У меня есть многомодульный проект Java Maven.Я добавил статический метод в класс junit модуля A. Теперь я хотел бы повторно использовать этот статический метод из теста juinit модуля B.
module 1:
public class AccountDAOTest {
private static Faker faker = new Faker();
public static Account getRandomAccount() {
Account account = new Account();
account.set...(faker.idNumber().valid());
...
return account;
}
@Test
public void getByName() {
Account expected = getRandomAccount();
accountDAO.persist(expected);
assertNotEquals(expected.getId(), null);
Account actual = accountDAO.getByName(expected.getName());
assertNotNull(actual);
}
...
}
модуль 2 (пытается повторно использовать статический метод):
public class BusinessBeanTest {
@Test
public void testSomething() {
Account account = AccountDAOTest.getRandomAccount();
...
}
}
Проблема в том, что AccountDAOTest.java отсутствует в пути к классамтест модуля 2 либо я добавляю зависимость модуля в pom.xml
модуля 2 с областью тестирования.
Я вижу только два решения:
- дублируйте этот метод и скопируйте его из модуля1 тестовый класс для модуля 2 тестовый класс
- удалить getRandomAccount () метод из тестового класса и добавить его в общий модуль как реальный код.
Нетиз двух приведенных выше решений выглядит хорошо.
Любая идея сделать это правильно?