分享

JUnit 5 集成 Allure 测试报告

 TestOps云层 2021-06-22

前面的文章我们介绍过 JUnit 5 单元测试框架:

【干货】JUnit5快速指南

利用这个单元测试框架完成单元测试来帮助提高代码质量,但是对于测试结果而言 JUnit 5 提供的测试报告不够美观,所以我们可以使用专门的测试报告框架 Allure 来生成“高大上”的报告展示。

依赖包导入

在 pom.xml 中添加集成 allure与junit5 的依赖包:

<dependency> <groupId>io.qameta.allure</groupId> <artifactId>allure-junit5</artifactId> <version>2.13.2</version></dependency>

配置 Maven 相关属性:

<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <java.version>1.8</java.version> <junit.api.version>5.6.2</junit.api.version> <junit.jupiter.version>5.6.2</junit.jupiter.version> <junit.platform.version>1.3.1</junit.platform.version> <aspectj.version>1.9.5</aspectj.version> <allure.version>2.13.2</allure.version></properties>

配置相关插件信息:

<!--junit allure maven运行测试用例jar包--><plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.22.2</version> <configuration> <argLine> -javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar" </argLine> </configuration> <dependencies> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>${aspectj.version}</version> </dependency> </dependencies></plugin><plugin> <groupId>io.qameta.allure</groupId> <artifactId>allure-maven</artifactId> <version>2.10.0</version> <configuration> <reportVersion>${allure.version}</reportVersion> <allureDownloadUrl>https://repo.maven./maven2/io/qameta/allure/allure-commandline/${allure.version}/allure-commandline-${allure.version}.zip</allureDownloadUrl> </configuration></plugin>

可从github下载对应的示例程序,查看对应的报告判定配置是否正确。

下载地址:https://github.com/allure-examples/allure-junit-example

在项目路径下执行测试,并生成测试对应的测试报告:

# 执行测试maven clean test
# 在项目路径下命令,生成测试报告allure serve

自动打开数据报告:

       

       

下面将介绍针对 Spring Boot 项目的单元测试生成对应的测试报告。

资源配置

添加对应的配置文件allure.properties:

allure.results.directory=target/allure-results

        

编写测试脚本

示例测试代码:

import io.qameta.allure.*;import org.junit.jupiter.api.DisplayName;import org.junit.jupiter.api.Tag;import org.junit.jupiter.api.Test;
@Tag("branch-20")@DisplayName("创建部门")@Link("https://www.baidu.com")@Issue("001")@Severity(SeverityLevel.BLOCKER)public class Junit5AllureTest { @Test @Description("测试用例说明") public void StepTest1(){ step1(); step2(); }
@Step("这是创建部门第一步") public void step1(){ System.out.println("步骤1"); }
@Step("这是创建部门第二步") public void step2(){ System.out.println("步骤2");    }}

生成测试报告

执行命令:

maven testallure generate target/allure-results -o target/allure-report --cleanallure open -h 127.0.0.1 -p 8083 target/allure-report

       

        

       

TestOps 本周课程安排:

_

时间

课题

周一


21:00

腾讯课堂

《敏捷测试从零开始》

周六


20:00

腾讯课堂

《测试开发从零开始

java篇

微信号 : TestOps

知乎:@TestOps云层

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多