У меня есть абстрактный базовый класс теста, который простирается от AbstractTestNGSpringContextTests
:
@ContextConfiguration(locations = { "classpath:spring-test-config.xml" })
@ActiveProfiles(resolver = ActiveProfileResolver.class)
public abstract class BaseTest extends AbstractTestNGSpringContextTests {
@Autowired
private MyActions myActions;
@BeforeSuite(dependsOnMethods = "beforeSuite", alwaysRun = true)
public void beforeUISuite() {
myActions.doSomething();
}
}
И тестовый класс, который простирается от BaseTest
public class ExampleTest extends BaseTest {
@Test
public void exampleTest( ){
// Do something
}
}
Когда работает метод beforeUISuite
, myActions
всегда равен нулю. Почему это не связано с Spring? Автозависимости в ExampleTest
правильно устанавливаются при запуске теста, но при выполнении beforeUISuite
ничего не было подключено?
Если я сделаю myActions
защищенным и закомментирую beforeUISuite
, myActions
будет правильно создан при запуске теста. Похоже, что он не подключен до выполнения метода, помеченного @BeforeSuite
?