Как запустить метод перед исполняемым классом с тестами? (аннотации junit @Before не подходят)
Всем привет. Есть класс запуска тестов CucumberRunnerTest. Перед его запуском мне нужно запустить другую функцию, которая генерирует сценарии из других файлов в директорию, которая указана в feature (изначально она пустая)
package ru.cucumber.test;
import io.cucumber.junit.Cucumber;
import io.cucumber.junit.CucumberOptions;
import org.junit.runner.RunWith;
@RunWith(Cucumber.class)
@CucumberOptions(
features = "src/test/resources/scenarios",
glue = "ru/cucumber/test/stepDefinition"
)
public class CucumberRunnerTest {
}
После того, как я запускаю mvn clean test нужно правило, что перед CucumberRunnerTest сгенерировать сценарии, используя другой мой метод
Аннотации @Before, @BeforeClass, @BeforeAll не подходят, тк они запускаются после инициализации класса CucumberRunnerTest. Поэтому получается, что параметр feature указывает на пустую директорию, где нет сгенерированных файлов
Ответы (1 шт):
class TestStackOwerflow {
@BeforeEach
void setUp() {
}
}
в junit5 аннотации before не работают.
Вместо этой аннотации в Junit5 пишется аннотация BeforeEach с методом setUp(), который вызывается перед каждым тестируемым методом.
При создании теста спрашивается, создать ли его автоматически, или можно написать его самостоятельно.