java+testng+allure

听说allure报告,"很好看",决定引入。

首先看allure官网,需要在pom.xml中引入包

文档:https://docs.qameta.io/allure#_testng

按照说明,引入后

之后再执行mvn clean test这个之后再执行allure serve target/allure-results(基本配置maven,allure包解压之后,配置环境变量,重启!mvn和allure命令才能用,不再详细说明)

哎,问题来了,首先mvn clean test就报错了:

Error:(4, 30) java: 无法访问org.testng.annotations.Test
错误的类文件: ***********\org\testng\testng\7.6.0\testng-7.6.0.jar(org/testng/annotations/Test.class)
类文件具有错误的版本 55.0, 应为 52.0
请删除该文件或确保该文件位于正确的类路径子目录中。

翻译之后如上,然后经调查发现,是自己顺手改了一个testng的版本号。。想用最新版,改成了7.6.0,愁人

原因:jdk版本和testng使用的jdk版本不统一。testng版本 7.6官网显示是JDK11以上版本才可用。我本地用的还是jdk8

改回使用低版本的testng 6.14.3,不报错了,开心,然后就继续执行allure serve target/allure-results,哎,一瞬间挺开心的,因为我看到浏览器自动打开了一个html

哇,神奇,but,,,显示的是NaN%,一碗冷水下肚,嗝儿~~

好吧,继续探索

首先问自己,这个命令行啥意思,allure serve是生成并打开的意思,还有一个命令行allure generate 是生成报告

那么,很显然allure serve target/allure-results,后半部分,就是读哪个路径的数据target/allure-results,很显然,我回去瞧了一眼,果然,哪里有个这个文件夹的影子。。

好吧,找到原因之后,应该是报告或者数据存储的路径没有配置,好的,pom.xml加上allure.results.directory的配置

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20</version>
<configuration>
<argLine>
-javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
</argLine>
<systemProperties>
<property>
<name>allure.results.directory</name>
<value>./target/allure-results</value>
</property>
</systemProperties>
</configuration>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
</plugin>

然后再重新执行mvn clean test

发现项目下生成了target/allure-results目录,留下了感动的泪水

好的,再次满怀希望执行allure serve target/allure-results,哇,好的,数据有了,开心。

 记录一下pom.xml文件

<aspectj.version>1.8.10</aspectj.version>

<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-testng</artifactId>
<version>2.19.0</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>7.6.0</version>
</dependency>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20.1</version>
<configuration>
<testFailureIgnore>false</testFailureIgnore>
<argLine>
-javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
</argLine>
<systemProperties>
<property>
<name>allure.results.directory</name>
<value>./target/allure-results</value>
</property>
</systemProperties>
</configuration>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
</plugin>

最新文章

  1. Linux常见查看硬件信息指令
  2. 【日常操作记录】Asp.Net Core 的一些基本操作或属性
  3. HTML 上传图片实用小技巧
  4. js做计算器
  5. 访问控制符private,default,protect和public
  6. cocos2d-x3.9 默认是 gnustl_static 配置,但是 这个库缺少c++的基础功能... c++_static 功能全面些
  7. Java数学表示式解析工具- jeval
  8. HDU 2187 A sequence of numbers
  9. python 远程统计文件
  10. OpenCV——KNN分类算法 &lt;摘&gt;
  11. 利用分布类防止EF更新模型丢失验证信息
  12. Codeforces Beta Round #97 (Div. 2)
  13. Python与开源GIS:在OGR中使用SQL语句进行查询
  14. Java的JDBC事务详解
  15. MFC 键盘响应
  16. 添加一个Android框架层的系统服务与实现服务的回调
  17. mutt+msmtp实现在shell环境中发送电子邮件
  18. 四舍五入函数ROUND(x,y)
  19. Mvc4_mvc4跟mysql语法
  20. refiling失败报错Invalid function: org-preserve-local-variables

热门文章

  1. SSM中PageHelper的使用方法
  2. drf-day3——drf整体流程、APIView执行流程及源码分析、Request对象源码分析、序列化器介绍和使用、反序列化的使用、反序列化的校验
  3. 不用Blazor WebAssembly,开发在浏览器端编译和运行C#代码的网站
  4. composer 安装 laravel指定版本
  5. 关于我在学习LFU的时候,在开源项目捡了个漏这件事。
  6. 2 .NET Core笔试题
  7. 逆天的Zstack-工控机上测试
  8. 【译】.NET 7 中的性能改进(三)
  9. MySQL创建表的三种方式
  10. 代码随想录算法训练营day18 | leetcode 513.找树左下角的值 ● 112. 路径总和 113.路径总和ii ● 106.从中序与后序遍历序列构造二叉树