У меня есть несколько тестовых классов testNG, которые расширяют базовый тестовый класс и используют одни и те же общие объекты. Я хочу, чтобы создание объекта выполнялось автоматически в BaseTest, поэтому мне не нужно включать его в каждый тестовый класс. На данный момент код работает, только если я добавлю createPages () в начало теста. Я попытался поместить их в класс BaseTest с помощью @BeforeClass и @BeforeSuite, но оба дали исключение нулевого указателя, означающее, что они не были созданы до запуска @Test test123, я верю.
public someTest extends BaseTest {
@Test
public void test123(){
createPages(); //i want to be able to remove this and have it done in BaseTest
menuPage.scroll();
}
}
public BaseTest {
MenuPage menuPage;
public void createPages() {
menuPage = new MenuPage(getDriver());
}
/*
@BeforeSuite
public void beforeSuite() {
createPages();
}
@BeforeClass
public void beforeClass() {
createPages();
}
*/
}