Junior — Middle
Как да се осигури единно повдигане на контекста за тестове, разположени в различни класове?
sobes.tech AI
Отговор от AI
За да осигурите единно повдигане на тестовия контекст, който се намира в различни класове в Java, обикновено се използва общ базов клас или конфигурационен клас, който инициализира необходимия контекст.
Например, в Spring тестовете може да създадете клас с анотация @ContextConfiguration и да го използвате като базов за всички тестови класове. Също така може да използвате анотацията @BeforeClass в базовия клас, за да извършите инициализация веднъж преди стартирането на всички тестове.
Пример:
@RunWith(SpringRunner.class)
@ContextConfiguration(classes = AppConfig.class)
public abstract class BaseTest {
@BeforeClass
public static void setUpContext() {
// Инициализация на общия контекст
}
}
public class FirstTest extends BaseTest {
@Test
public void testSomething() {
// тест
}
}
public class SecondTest extends BaseTest {
@Test
public void testAnother() {
// тест
}
}
По този начин, контекстът се повдига веднъж в базовия клас и е достъпен във всички наследници.