Junit5+Maven+RestAssured+Allure接口自动化框架

需求分析

需求点 需求分析
通过 yaml 配置接口操作和用例 后续新增接口和测试用例只需要编写 yaml 文件即可实现。
可以支持接口间的参数传递 具有参数依赖的接口可以进行变量的抽取和参数赋值。
支持全局、用例维度的变量存储 比如时间截命名法中要用到的时间截后缀。
支持用例软断言 断言不应该使测试中断,可以在测试执行后统一的进行断言。
支持报告的输出 可以复用 Junit5 和 allure2 成熟框架生成测试报告。
支持自动生成 yaml 文件 除了手动编写 yaml 脚本外,还可以通过解析 har 文件,自动生成测试用例。

开发设计

分层与抽象

技术选型

功能 所选技术
单元测试框架 Junit5
断言 Hamcrest
接口测试 Rest-Assured
yaml 读取与生成 Jackson
har 解析 Har-Reader
测试报告 Allure-Junit5

主要类设计

接口自动化测试框架-主要类设计| ProcessOn免费在线作图,在线流程图,在线思维导图

测试文件设计

测试用例文件:

接口文件:

工程目录设计

工程实现

github 地址

https://github.com/juno3550/ApiAutoTestFramework

运行示例

工程根目录下执行:

复制代码
# 运行项目测试
mvn clean test
# 查看 allure 结果报告
allure serve target/allure-results

测试报告示例:

相关推荐
judezh4 小时前
api 容器一直 unhealthy?我把一个 Agent 运行时的健康检查逐条拆了,查出四个问题
运维·docker
春天花会开1314 小时前
内网 HTTPS 部署实战:私有 CA + Nginx 反向代理全流程复盘
运维·nginx·https
AllFiles4 小时前
K8s Node Exporter 异常 Write 超时排查实录
运维·后端·kubernetes
qq_426003966 天前
启动playwright录制codegen生成自动化测试脚本
python·自动化
虎头金猫6 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
AI职业加油站6 天前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
此冬歌咏6 天前
K8s 节点故障实战:优雅驱逐 31 秒,硬故障 331 秒,以及那个永远 Pending 的 Pod
运维·k8s
-梅6 天前
linux(8) 软硬链接
linux·运维·服务器
张洛闻Eren6 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github