我只想通过JAVA或testng侦听器使用testng-results.xml文件来创建可通过电子邮件发送的模板执行报告。我有现有的testng-results.xml文件,需要将其作为可通过电子邮件发送的报告。有没有办法做到这一点。我只需要一些投入和想法就可以开始这项活动。
任何线索。
答案 0 :(得分:0)
使用XSLT template,这是从xml生成任何报告格式的最有效,最简单的方法。
在我的项目中,我们从testng-results.xml生成不同类别的html报告,以进行快速回归分析。此外,我们还使用了来自testng-results.xml的xslt生成了json报告,以查看汇总结果。
我们使用gradle构建工具运行xslt并在测试完成后生成报告,
configurations{ xslt }
dependencies {
xslt 'net.sf.saxon:saxon:8.7'
}
task generateReport << {
File reportDir=new File("${projectDir}/HTML_Reports")
if(reportDir.exists()){
reportDir.deleteDir()
}
reportDir.mkdir()
ant.xslt(in: "${testReportDir.absolutePath}/test/testng-results.xml",
style: "${projectDir.absolutePath}/src/test/resources/xslt_config/emailablereport.xsl",
out: "${reportDir.absolutePath}/index.html",
classpath: configurations.xslt.asPath) {
param(name: 'paramXSLT.environment', expression: "${env}")
}
您也可以使用this plugin
在maven中运行xsl有关在Java程序中运行xsl的信息,请参见this post