selenium-Excel 报告插件研发

预期效果:
1. 用例的名称是测试用例的java类
2. 测试结果如果是成功的显示为:Passed并且底色为蓝色,如果是失败的显示Failed并且底色为红色,如果测试异常中断,显示的是Skipped并且底色是黄色。
3.·完整日志会记录这条用例执行的日志不论成功还是失败,点击该日志名字可以打开查看,注意这里的日志并不是以附件的形式上传而是以超链接的形式链接过
来的,它指向本地或者服务器上的日志路径。
4.·截图,只有失败的用例并且成功截取到图片的用例才会显示截图,点击图片名称可以查看详细截图,如果没有截取到图片此框就会显示“此用例没有截图”
实现原理
1.TestNG进行开发,它可以用在基于TestNG的自动化测试框架中,它可以收集测试结果并且存储在excel
2.其中TestNG中的IReporter类负责统计测试数据并生成报告,TestListenerAdapter类负责监听每个测试用例的测试过程
统计测试结果并生成测试报告的类,
需要实现IReporter这个接口并实现generateReport(List<XmlSuite> xmlSuites, List<ISuite> suites, String outputDirectory) {}这个方法,(在这个方法主体中写上具体的生成excel文件的详细代码,详见:CreateExcelForResult.java。)
监听测试结果类需要继承TestListenerAdapter类并且重写你需要的测试用例各个阶段的状态,比如下面的代码:( TestResultListener.java。)
实现步骤:
1。首先确保您的自动化框架pom.xml文件中有以下如下的pox,查看文件
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.9.4</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.48.2</version>
</dependency>
<dependency>
<artifactId>commons-configuration</artifactId>
<version>1.9</version>
</dependency>
2.本章节中已经打包好的excel测试报告插件的jar包:excelReporter.jar。将此jar包添加到你的项目path中
3.然后在testNg的配置文件中加入监听
<listeners>
<listenerclass-name="com.incito.excelReporter.TestResultListener"/>
<listenerclass-name="com.incito.excelReporter.ExcelReporter"/>
</listeners>
4.最后通过testNG的xml文件执行测试即可生成excel报告。
生成的报告存储于TestNG的报告目录(一般默认为test-output,可自定义)下的excelReports目录下,命名规则为:
“TestReport_yyyy-MM-dd_HH-mm-项目名称.xlsx”,如下图所示:
注意:如果你不想直接使用jar包,可以直接导入源码直接使用,源码请到网盘中获取:“excelReporter-src.zip”


猜你喜欢

转载自blog.csdn.net/liangdeniu/article/details/80167457