当前位置: 首页 > news >正文

【jenkins】testng+allure报告

testng+allure报告的配置。

前提:testng本地化配置ok,执行无问题。【选中testng.xml 右键执行,用例执行顺利无异常】

1 本地化执行引入Allure

1.1 maven项目中的pom.xml添加Allure相关依赖

pom.xml添加依赖如下,有allure和衍生的一些插件

<?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>org.jbl</groupId><artifactId>testng0130</artifactId><version>1.0-SNAPSHOT</version><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><!--指定Allure版本--><allure.version>2.20.1</allure.version><!--AspectJ版本,用于方法拦截--><aspectj.version>1.9.9.1</aspectj.version></properties><dependencies><dependency><groupId>org.testng</groupId><artifactId>testng</artifactId><version>7.8.0</version><scope>test</scope></dependency><!--AllureTestNG集成--><dependency><groupId>io.qameta.allure</groupId><artifactId>allure-testng</artifactId><version>${allure.version}</version><scope>test</scope></dependency></dependencies><build><plugins><!--确保使用MavenSurefirePlugin运行TestNG--><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId><version>2.22.2</version><configuration><suiteXmlFiles><suiteXmlFile>src/test/resources/testng/testng-sit.xml</suiteXmlFile></suiteXmlFiles><argLine>-javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"</argLine><systemProperties><property><name>allure.results.directory</name><value>${project.build.directory}/allure-results</value></property></systemProperties><!--5.测试执行配置--><includes><include>**/*Test.java</include> </includes> <excludes> <exclude>**/*Abstract*.java</exclude></excludes><!--8.日志配置--><redirectTestOutputToFile>true</redirectTestOutputToFile></configuration><!--4.添加AspectJWeaver依赖--><dependencies><dependency><groupId>org.aspectj</groupId><artifactId>aspectjweaver</artifactId><version>${aspectj.version}</version></dependency></dependencies></plugin></plugins></build></project>

1.2 testng的执行套间testng.xml中添加allure监听

<?xml version="1.0"encoding="UTF-8"?><!DOCTYPE suite SYSTEM"http://testng.org/testng-1.0.dtd"><suite name="acquire suite"><test name="apitest"verbose="1"><classes><classname="testcases.testLogin"/><classname="testcases.testLogin1"/></classes></test><!--配置allure的监听--><listeners><listenerclass-name="io.qameta.allure.testng.AllureTestNg"/></listeners></suite>

1.3 testng的执行用例添加Allure相关标识,方便收集报告并整理

packagetestcases;importbase.BaseTest;importio.qameta.allure.Epic;importio.qameta.allure.Feature;importorg.testng.annotations.Test;publicclasstestLogin{@Test@Epic("登录测试")@Feature("登录功能测试2")publicvoidtestLogin(){//System.out.println(getBaseUrl());System.out.println("admin");}}

1.3 本地调试,检查是否生成

#第一步、执行测试mvn clean test#第二步、查看报告allure serve target/allure-results

ps:输入第二步后,会立即弹出浏览器网页,显示测试报告。

2 jenkins配置流水线

2.1 jenkins下载插件并进行全局工具配置

allure integration plugin
maven integration plugin

2.2 新建流水线(freestyle类型)

注意,需要留意各个工具在流水线中可顺利执行。(跟命令行中可能会有差异,命令行在中成功的命令,jenkins流水线中不一定成功,因此我这里加了很多冗余的check,其实核心逻辑没几行)

流水线shell脚本

#!/bin/bashecho"正在执行testng测试。。。。。。。"echo"当前路径如下"pwdls-laecho"当前用户如下"whoamiecho"正在检查java版本"java-versionecho"正在检查maven版本"#这里本来应该直接用mvn -version,但是jenkins执行会报错,所以这里用绝对路径/opt/homebrew/bin/mvn-versionecho"正在检查allure版本"#这里本来应该直接用mvn -version,但是jenkins执行会报错,所以这里用绝对路径#allure --versionecho"正在进入工作目录。。。"cd/Users/user1/IdeaProjects/testng0130#echo "正在清理历史结果。。。"#rm -rf allure-results || trueecho"正在执行测试"/opt/homebrew/bin/mvn clean test-DsuiteXmlFile=resources/testng/testng-sit.xml-Dallure.results.directory=target/allure-resultsecho"测试已完成!"echo"检查结果路径"pwdls-la target/allure-resultspwdfind.-name"allure-results"-typed# 复制 allure-results 到 Jenkins 工作区cd$WORKSPACEecho"$WORKSPACE"mkdir allure-resultscp-r/Users/user1/IdeaProjects/testng0130/target/allure-results/*$WORKSPACE/allure-results

2.3 执行流水线

点击流水线的执行按钮,执行流水线。

小结:按如上操作便可完成testng的流水线搭建。
但是目前遗留一个问题,构建id里的allure报告是好的,但是最外层的allure报告是空的,还需继续研究,后续再说吧。
ps:这里调试的时候用的是mac本,因此不确定windows是否也ok。

http://www.jsqmd.com/news/335807/

相关文章:

  • 2026年西安高性价比软件开发服务团队综合评估报告 - 2026年企业推荐榜
  • 2026年靠谱的四可设备用户口碑认可厂家 - 行业平台推荐
  • 2026年质量好的西安展柜/木质展柜热门品牌厂家推荐 - 行业平台推荐
  • <span class=“js_title_inner“>团队准备解散了…</span>
  • <span class=“js_title_inner“>DolphinDB:实时决策时代——AI与低延时计算如何重塑数字孪生</span>
  • RDF(Resource Description Framework) 入门理解
  • 刮泥机优质厂家权威盘点:6家实力厂商深度解析 - 2026年企业推荐榜
  • 音视频学习(八十八):mp4
  • <span class=“js_title_inner“>做了十年DBA,我为什么对“AI优化SQL”从警惕变为认同?</span>
  • 音视频学习(八十七):AVCC、HVCC和VVCC
  • SpringBoot+Vue 小区团购管理管理平台源码【适合毕设/课设/学习】Java+MySQL
  • 2026年长沙原木定制批发商深度评估:三大顶尖厂商解析 - 2026年企业推荐榜
  • 2026年口碑好的西安卡箍式压力变送器厂家推荐必看 - 行业平台推荐
  • 2026年比较好的楔形节流式流量计/双量程节流式流量计行业内口碑厂家推荐 - 行业平台推荐
  • ZZ039移动应用与开发赛项模块A—移动应用界面设计原型图XD参考答案(二)
  • 2026年质量好的V锥节流式流量计/多孔平衡节流式流量计厂家采购参考指南(必看) - 行业平台推荐
  • ZZ039移动应用与开发赛项模块A—移动应用界面设计原型图XD参考答案(十)
  • ZZ039移动应用与开发赛项模块A—移动应用界面设计原型图XD参考答案(三)
  • 2026年软件测试职业院校技能大赛—ERP管理平台-商品信息模块Bug定位与查找
  • ZZ039移动应用与开发赛项模块A—移动应用界面设计原型图XD参考答案(四)
  • ZZ039移动应用与开发赛项模块A—移动应用界面设计原型图XD参考答案(七)
  • ZZ039移动应用与开发赛项模块A—移动应用界面设计原型图XD参考答案(一)
  • ZZ039移动应用与开发赛项模块A—移动应用界面设计原型图XD参考答案(八)
  • ZZ039移动应用与开发赛项模块A—移动应用界面设计原型图XD参考答案(九)
  • ZZ039 移动应用与开发赛项参考答案专栏必看说明
  • ZZ039移动应用与开发赛项模块A—移动应用界面设计原型图XD参考答案(六)
  • YOLOv13涨点改进 | HyperACE、注意力创新改进篇 | TGRS 2025 | 引入ACA非对称跨域注意力机制,一种轻量特征增强机制,含多种创新改进,助力小目标检测有效涨点
  • YOLOv11涨点改进 |全网独家、特征融合创新篇 | TGRS 2025 | 引入ERM边缘感知细化融合模块,解决红外小目标检测中常见的边界模糊、目标不完整、背景干扰问题,助力YOLOv11有效涨点
  • YOLOv11涨点改进 |全网独家、特征融合创新篇 | TGRS 2026 | 引入MFPM多频感知融合模块,通过频率感知的判别过滤器,使融合特征“干净、聚焦”,适合红外、遥感小目标检测,有效涨点改进
  • 化学配对记忆游戏:用Python和Pygame打造趣味化学学习工具