虽然我试图从ant运行TestNG作为'testng'任务,但我的行为很奇怪。 TestNG不会在@BeforeSuite方法中创建类实例,而在@Test方法中的子类中我会得到NullPointerException。例如。
public class TestBase {
Page mainPage;
@BeforeSuite
public void login() {
...
mainPage = new MainPage();
...
}
}
public class Test_1 extends TestBase {
@Test
public void test1() {
AlbumPage albumPage = mainPage.openAP(); //<-- here i get NullPointerException!
...
}
}
如果使用ant - stacktrace运行TestNG,那么我只能 当它尝试使用来自TestNG lib的“taskdef”创建任务时,会在ant类的某个地方显示起源。 那么,这里的问题是什么?这是一个错误还是我做错了什么?
答案 0 :(得分:0)
你可能在调用或定义ant任务的方式上做错了。
你的build.xml是什么?什么是堆栈跟踪?
答案 1 :(得分:0)
知道了。问题出在@BeforeTest方法中。它不是在每个@Test mehod之前调用,而是仅在第一个标记之前调用。如果我们在一个套件中进行所有测试 - 结果是可预测的。