一、前言
之前用httprunner框架的时候也是用的allure测试报告,但是没有做具体描述,本次会详细描述下allure报告的注解功能。
二、pom.xml
本次改成了用maven项目,直接用pom自动更新下载依赖包(allure),具体代码如下:
(1、这里要注意版本,当时运行allure一直报错,最后才发现是allure-testng-adaptor版本的原因;2、依赖包最好改下路径,不然都放c盘会很卡,如何更改路径可自行百度)
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>groupId</groupId> <artifactId>TestNG_api_test</artifactId> <version>1.0-SNAPSHOT</version> <properties> <maven.compiler.source>17</maven.compiler.source> <maven.compiler.target>17</maven.compiler.target> <aspectj.version>1.8.10</aspectj.version> <!--AspectJ是一个基于Java语言的AOP框架--> <allure.version>2.9.0</allure.version> <!-- 解决mvn编译乱码问题--> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <!-- 依赖reportNg 关联testNg--> <dependency> <groupId>org.uncommons</groupId> <artifactId>reportng</artifactId> <version>1.1.4</version> <scope>test</scope> <exclusions> <exclusion> <groupId>org.testng</groupId> <artifactId>testng</artifactId> </exclusion> </exclusions> </dependency> <!--allure的testng插件--> <dependency> <groupId>ru.yandex.qatools.allure</groupId> <artifactId>allure-testng-adaptor</artifactId> <version>1.3.6</version> <exclusions> <exclusion> <groupId>org.testng</groupId> <artifactId>testng</artifactId> </exclusion> </exclusions> </dependency> <!-- 依赖Guice --> <dependency> <groupId>com.google.inject</groupId> <artifactId>guice</artifactId> <version>4.0</version> </dependency> <dependency> <groupId>io.qameta.allure</groupId> <artifactId>allure-testng</artifactId> <version>2.17.0</version> </dependency> <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>6.14.3</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-nop</artifactId> <version>1.7.2</version> </dependency> </dependencies> <build> <plugins> <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> <!--生成allure-result的目录--> <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> </plugins> </build> </project>
三、allure执行
1、用pom.xml拉好依赖包后,执行测试用例
2、测试用例执行完成后会在项目目录下生成:allure-results文件夹
3、最后通过IDEA 的Terminal功能,在当前项目下执行如下命令
- allure generate allure-results #生成一个指定的报告到指定位置 (默认生成allure-report文件)
- allure generate allure-results -o allure-report --clean #清空已有测试报告后再生成
- allure open allure-report #打开生成的报告
四、allure注解
1、官方文档
2、常用注解
参考:https://blog.csdn.net/tester_runing/article/details/108979202