我有以下 testng.xml
<test name="CommonReportingTests" preserve-order="true">
<classes>
<class name="com.blah.ReportRunTests">
<methods>
<include name="login" />
<include name="checkHomeTab" />
<include name="checkReportsTab" />
<include name="checkReportsExist" />
<include name="reportsCleanup" />
</methods>
</class>
<class name="com.blah.RestoreActivityTests">
<methods>
<include name="login" />
<include name="checkHomeTab" />
<include name="checkReportsTab" />
<include name="checkReportsExist" />
<include name="expandReportsTabAndClickRestoreActivity" />
</methods>
</class>
</classes>
我的 TestBase 类有这个:
@Parameters({ "webconsoleStartupURL" })
@BeforeSuite(description = "Perform class setup tasks")
public void beforeClass(final String webconsoleStartupURL)
throws ClassNotFoundException, InstantiationException,
IllegalAccessException {
sm = new SeleniumMgr(webconsoleStartupURL);
sm.startSelenium();
}
@AfterSuite(description = "Perform class teardown tasks")
public void afterClass() {
sm.stopSelenium();
}
当我执行测试时,只有 xml 中的第二个测试,即 RestoreActivityTests 似乎运行,然后它退出套件。第一个类未执行,我在第一个测试中看到 NullPointerException。
我只想要一个浏览器实例并执行多个测试。testng 文档表明我上面使用的 xml 版本实际上是正确的。这里有什么问题?