У меня есть абстрактный класс, который содержит логики инициализации c из @BeforeSuite
и BeforeMethod
. Объект Client
инициализируется в методе @BeforeSuite
и используется в BeforeMethod
. Однако, когда я распечатываю порядок выполнения и проверку на ноль в обоих методах, порядок выполнения работает как положено, но BeforeMethod
сообщает, что клиентская ссылка является нулевой, что не имеет смысла, так как @BeforeSuite
уже инициализирует ее. Образец кода и результат печати предоставляются:
public abstract class TestBase {
public Client client;
@BeforeSuite
public void suiteSetup() {
client = initializeClient();
System.out.println("BeforeSuite");
System.out.println(client == null); // print false
}
@BeforeMethod
public void suiteSetup() {
System.out.println("BeforeMethod");
System.out.println(client == null); // print true
client.call(); // Throw nullpointer exception
}
}
TestClass extends TestBase {
@Test
...
}