#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
Комментариев нет:
Отправить комментарий