#java #юнит_тесты #junit
Тестирую некоторый алгоритм. Данные для алгоритма хранятся в списке. В итоге у меня
получается вот так:
@Test
public void testOneDirectModeBestCaseEven(){
list.add(new Agent(6));
list.add(new Agent(1));
list.add(new Agent(2));
list.add(new Agent(3));
list.add(new Agent(4));
list.add(new Agent(5));
int i = 0;
while(!list.hasSolution()){
LeaderElection.solve(list, i++);
}
int leaderId = list.getLeaderId();
assertEquals(6, leaderId);
}
@Test
public void testOneDirectModeBestCaseOdd(){
list.add(new Agent(5));
list.add(new Agent(1));
list.add(new Agent(2));
list.add(new Agent(3));
list.add(new Agent(4));
int i = 0;
while(!list.hasSolution()){
LeaderElection.solve(list, i++);
}
int leaderId = list.getLeaderId();
assertEquals(5, leaderId);
}
И еще много функций. Получается дублирование в том что я заполняю List в каждом тесте.
Но и в setUp не вынесешь, потому что заполнять то нужно по-разному для каждого теста.
Ответы
Ответ 1
Вам могут помочь параметризованные тесты. JUnit их тоже поддерживает. Приведу код, подробнее почитать можете по ссылкам. (На джаве давно не писал, поэтому скорее всего тут есть ошибки компиляции :)) @RunWith(Parameterized.class) public class LeaderElectionTests{ @Parameters public static Collection
Комментариев нет:
Отправить комментарий