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

测试报告示例

相关推荐
小小管写大大码10 分钟前
如何让vscode变得更智能?vscode接入claude实现自动编程
运维·ide·vscode·自动化·编辑器·ai编程·腾讯云ai代码助手
TM1Club32 分钟前
AI驱动的预测:新的竞争优势
大数据·人工智能·经验分享·金融·数据分析·自动化
zhang1338308907536 分钟前
CG-09H 超声波风速风向传感器 加热型 ABS材质 重量轻 没有机械部件
大数据·运维·网络·人工智能·自动化
GAOJ_K1 小时前
滚珠花键的无预压、间隙调整与过盈配合“场景适配型”
人工智能·科技·机器人·自动化·制造
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.2 小时前
Keepalived VIP迁移邮件告警配置指南
运维·服务器·笔记
物联网软硬件开发-轨物科技2 小时前
【轨物洞见】告别“被动维修”!预测性运维如何重塑老旧电站的资产价值?
运维·人工智能
程序员允诺2 小时前
[DevOps实战] 彻底解决依赖地狱:如何编译全静态、可移植的 Xorriso 工具
运维·devops
酣大智2 小时前
接口模式参数
运维·网络·网络协议·tcp/ip
一只自律的鸡2 小时前
【Linux驱动】bug处理 ens33找不到IP
linux·运维·bug
!chen3 小时前
linux服务器静默安装Oracle26ai
linux·运维·服务器