Allure–自动化测试报告生成

Allure–自动化测试报告生成之前尝试使用过testNG自带的测试报告、优化过reportNG的测试报告,对这两个报告都不能满意。后经查找资料,发现有个神器:Allure(已经有allure2了,笔者使用的就是allure2),

大家好,又见面了,我是你们的朋友全栈君。

之前尝试使用过testNG自带的测试报告、优化过reportNG的测试报告,对这两个报告都不能满意。后经查找资料,发现有个神器:

Allure(已经有allure2了,笔者使用的就是allure2),生成的测试报告与上述两种对比,简直完美!先上个测试报告的图表,给大家直观感受下:

<span role="heading" aria-level="2">Allure--自动化测试报告生成

<span role="heading" aria-level="2">Allure--自动化测试报告生成

 

接下来教大家来使用Allure,生成自己高大上的测试报告,带有失败用例截图、测试步骤和测试说明信息。

第一步,在maven中添加依赖并进行相应的配置:

 <properties> <aspectj.version>1.8.10</aspectj.version> </properties> <dependencies> <dependency> <groupId>io.qameta.allure</groupId> <artifactId>allure-testng</artifactId> <version>2.6.0</version> <scope>test</scope> </dependency> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>${aspectj.version}</version> </dependency> </dependencies> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.10</version> <configuration> <!--设置参数命令行--> <argLine> -javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar" </argLine> <systemPropertyVariables> <!--是否忽略html,解释见下图。与之后在reportNg报告上显示截图相关。当前已经使用allure了,这里可以直接去掉啦--> <org.uncommons.reportng.escape-output>false</org.uncommons.reportng.escape-output> </systemPropertyVariables> <!--测试失败后,是否忽略并继续测试--> <testFailureIgnore>true</testFailureIgnore> <argLine> -Dfile.encoding=UTF-8 </argLine> <suiteXmlFiles> <!--代表的是要执行的测试套件名称--> <suiteXmlFile>src/test/resources/testNG.xml</suiteXmlFile> </suiteXmlFiles> </configuration> </plugin>

 

第二步:在Jenkins中安装Allure的插件【系统管理】-【插件管理】-【可选插件】中下载并安装Allure,安装后重启。安装成功后,可在【系统管理】-【插件管理】-【已安装插件】中看到

<span role="heading" aria-level="2">Allure--自动化测试报告生成

 

第三步:到girhub上下载Allure2 ,地址:https://github.com/allure-framework/allure2/releases

<span role="heading" aria-level="2">Allure--自动化测试报告生成

 

下载之后解压到相应目录下,如:

<span role="heading" aria-level="2">Allure--自动化测试报告生成

 

 

第四步,在Jenkins的【系统管理】-【全局工具配置】中设置allure的安装地址:

<span role="heading" aria-level="2">Allure--自动化测试报告生成

保存即可。

此时通过Jenkins构建并执行测试代码后,就可以看到Allure的测试报告了。以上,完成了Allure的基本配置。

<span role="heading" aria-level="2">Allure--自动化测试报告生成

 

好啦,Allure可以使用了,接下来,我们挖掘下该工具其他好用的点。

第一:生成失败用例截图:

第一步:在测试类上,添加Listeners的注解

<span role="heading" aria-level="2">Allure--自动化测试报告生成

 

 第二步:实现自己的用例的监听,监听到之后进行截图

public class TestFailListener extends TestListenerAdapter { @Override public void onTestFailure(ITestResult result) { takePhoto(); } @Attachment(value = "screen shot",type = "image/png") public byte[] takePhoto(){ byte[] screenshotAs = ((TakesScreenshot)BaseTester.driver).getScreenshotAs(OutputType.BYTES); return screenshotAs; } }

使用Allure的attachment注解,即可实现报告中显示截图的需求。

第三步,将监听配置到testNG的配置文件中

<span role="heading" aria-level="2">Allure--自动化测试报告生成

 

截图效如下图:

<span role="heading" aria-level="2">Allure--自动化测试报告生成

 

 第二:显示测试描述信息。

在测试报告中,我们期望可以看到每个case的描述信息,可以使我们的测试过程更加清晰。

只需要在Test注解中,给description进行赋值即可:

<span role="heading" aria-level="2">Allure--自动化测试报告生成

 

 效果如下图:

<span role="heading" aria-level="2">Allure--自动化测试报告生成

 

是不是很心动,赶紧动手试试吧!!

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/155075.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • Mac virtualbox 共享文件夹

    Mac virtualbox 共享文件夹1.启动virtualbox,选中虚拟机,点击设置,点击共享文件夹;2.点击右侧按钮添加共享文件夹;3.选择共享文件夹路径(mac路径),自动挂载,固定分配两个勾选。4.VBoxGuestAdditions_5.0.0.iso下载地址http://download.virtualbox.org/virtualbox/5.0.0/5.启动VirtualBox,启动win7虚拟机,…

    2022年10月27日
  • Linux Platform Device and Driver「建议收藏」

    Linux Platform Device and Driver「建议收藏」 从Linux2.6起引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver。Linux中大部分的设备驱动,都可以使用这套机制, 设备用Platform_device表示,驱动用Platform_driver进行注册。 Linuxplatformdriver机制和传统的devicedriver 机制(通过driver_registe

  • Debian网卡配置_服务器光纤网卡配置

    Debian网卡配置_服务器光纤网卡配置Debian不同于centos系统,网卡配置不是在/etc/sysconfig/network-scrip里面,而是在/etc/network/interfaces里面1.修改vi/etc/network/interfacesautoeth0#开机自动启动ifaceeth0inetstatic#静态IP设置address192.168.0.10#本机IPnetmask255.255.255.0#子网掩码gateway192.168.0.1#网关ifaceeth0i

  • asp还有人用吗_javascript和jsp区别

    asp还有人用吗_javascript和jsp区别英文原文There’sanexistingStackOverflowquestionandexamplethatcallsExecuteAsynconRestSharp.NetCore.IsuccessfullyusedthatexamplewhenreferencingRestSharp.NetCore105.2.3withNewtonsoft.Json…

  • springMVC执行流程及原理

    springMVC执行流程及原理spring的MVC执行原理1.springmvc将所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责对请求进行真正的处理工作。2.DispatcherServlet查询一个或多个HandlerMapping,找到处理请求的Controller.3.DispatcherServlet请请求提交到目标Controller4.Controller进行

  • pycharm永久激活码 2021.5【在线注册码/序列号/破解码】「建议收藏」

    pycharm永久激活码 2021.5【在线注册码/序列号/破解码】,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号