java - TestNG 自定义结果

标签 java testng

我使用 testNG 来运行测试自动化框架。目前,我运行了大量的测试套件,然后在套件后我迭代监听器中的结果,并将它们添加到我用作测试仪表板的 mySQL 数据库中。

它工作得很好,但我现在想做的是当我在 @test 中遇到失败时截取屏幕截图并将其添加到结果中,以便在我的监听器中我可以处理它。

像这样就好了

@test
foo(){
  My Test hits an error I take screenshot = shot1
  ResultMap.add(customError=shot1)
}

然后,当我在监听器中处理套件末尾的所有结果时,我可以说

如果customeError =true将customError写入我的数据库

无论如何,做类似的事情

最佳答案

我想我已经弄清楚了,除非我错过了一些看起来有效并且几乎很容易的东西

ITestResult result = Reporter.getCurrentTestResult();
result.setAttribute("Name", "put my screenshot here");

在我的@test中我只能说断言是否失败

ITestResult result = Reporter.getCurrentTestResult();
result.setAttribute("Name", "put my screenshot here");

我的测试监听器现在有一个 if 来查找“Name”,如果有则获取值并将其放入我的数据库中。

快速测试看起来不错,如果我真正编写代码时它有效,我会更新它

关于java - TestNG 自定义结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9712474/

相关文章:

java - 如何使用 waitFor() 暂停进程

java - 对独立 Web 服务的并发 http 请求

java - 如何识别当前标题的 super (父)标题级别

java - 如何使用 testng 和 powermockito 模拟 map

java - 如果更改来自网格单击,则 JSF 组件不会更新

java - 使用 Java 查询 DynamoDB 中的最大属性值

java - 如何在单元测试期间将资源文件路径交换为测试文件?

java - 如何在多台服务器上并行运行 IE 中的 TestNG/Selenium 测试套件?

java - 如何使用 webdriver 和 TestNG 在单个类文件中运行两个 @Test 方法

java - Mockito @InjectMocks 策略