Добавление метода удаления в несколько наборов тестов junit

Предположим, у нас есть несколько наборов тестов:

@RunWith(Suite.class)               
@Suite.SuiteClasses({               
  Tests1.class,
  Tests2.class,             
})      
public class TestSuite1 {               
}

@RunWith(Suite.class)               
@Suite.SuiteClasses({               
  Tests3.class,
  Tests4.class,             
})      
public class TestSuite2 {               
}

Можно ли было бы гибко добавить разрыв @AfterClass без необходимости добавлять один и тот же блок кода во все классы TestSuite *?

@AfterClass
public static void baseTearDown() {
  // Close some resourcess
}

Вы можете написать родительский класс для всех ваших наборов с помощью метода afterclass

gkgkgkgk 10.08.2018 16:49

Вы можете создать служебный класс, но что означает с гибким ??

lealceldeiro 10.08.2018 16:49

@gkgkgkgk по моему опыту, для больших проектов, которые могут быть громоздкими в обслуживании.

lealceldeiro 10.08.2018 16:50

Мне было интересно, можем ли мы использовать магию Guice, чтобы избежать ручного редактирования "extends ...".

Dio 10.08.2018 16:53

@lealceldeiro как так? Не возражаю, просто любопытно.

gkgkgkgk 10.08.2018 16:55

@gkgkgkgk, если вы настраиваете логику tearDow в базовом классе и используете ее в качестве родительского класса для множества подклассов ... когда в будущем произойдет какое-то незначительное изменение и вам потребуется изменить логику tearDown, это может применяться кейсы (базового класса), но не для всех. Это когда начинается хаос, потому что может быть действительно сложно отследить, где находятся отказы, базовый класс? конкретный модульный тест? и список продолжается.

lealceldeiro 10.08.2018 17:03

@gkgkgkgk, возможно, вы захотите взглянуть на petrikainulainen.net/programming/unit-testing/…, stackoverflow.com/questions/6715281/…

lealceldeiro 10.08.2018 17:04

@lealceldeiro, спасибо за информацию! Оба были хорошими чтениями. хорошо знать

gkgkgkgk 10.08.2018 17:11
3
8
39
0

Другие вопросы по теме