我在运行我的项目时遇到java.lang.NullPointerException
错误,该项目的Testng框架配置了ATUReporter
我做过的事情:
- 在项目中添加了ATU jar
- 在我的基类中添加了
@Listeners({ ATUReportsListener.class, ConfigurationListener.class, MethodListener.class })
- 添加行
System.setProperty("atu.reporter.config", "path\ATU.properties");
-
在我的测试文件中添加了这一行:
<listeners> <listener class-name="atu.testng.reports.listeners.ATUReportsListener" /> <listener class-name="atu.testng.reports.listeners.ConfigurationListener" /> <listener class-name="atu.testng.reports.listeners.MethodListener" /> </listeners>
-
我的ATU.properties文件也在Systemproperty行中提到的正确目录中。
请建议!
基类示例:
@Listeners({ ATUReportsListener.class, ConfigurationListener.class, MethodListener.class })
public class test {
{
System.setProperty("atu.reporter.config", "path\ATU.properties");
}
@Test(priority=0)
public void login()
{
OpenUrltest();
}
}
错误堆栈跟踪:
java.lang.IollegalStateException:java.lang.NullPointerException位于atu.testng.reports.listeners.ATUReportsListener.onStart(未知源)网址:org.testng.SuiteRunner.invokeListeners(SuiteRunner.java:210)网址:org.testng.SuiteRunner.run(SuiteRunner.java:268)网址:org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)网址:org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)网址:org.testng.testng.runSuitesSequencely(testng.java:1284)在org.testng.testng.runSuitesLocally(testng.java:1209)网址:org.testng.testng.runSuites(testng.java:1124)网址:org.testng.testng.run(testng.java:1096)位于org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:132)位于org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:236)网址:org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:81)导致原因:java.lang.NullPointerException位于atu.testng.reports.utils.Directory.init(未知源)位于atu.testng.reports.utils.Directory.verifyRequiredFiles(未知源)…还有12个
由于ATU Reports目录是为生成输出报告手动创建的,因此发生错误。删除此目录后,错误被清除,所以我认为ATU会在您第一次尝试运行套件时自动创建此目录。