接口自动化测试框架(Java 实现)

目录
  • 需求分析
  • 开发设计
    • 分层与抽象
    • 技术选型
    • 主要类设计
    • 测试文件设计
    • 工程目录设计
  • 工程实现
    • github 地址
    • 运行示例

需求分析

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

开发设计

分层与抽象

接口自动化测试框架(Java 实现)_第1张图片


技术选型

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

主要类设计

https://www.processon.com/view/link/622cd08e0e3e7407da4427bc


测试文件设计

测试用例文件

接口自动化测试框架(Java 实现)_第2张图片

接口文件

接口自动化测试框架(Java 实现)_第3张图片

接口自动化测试框架(Java 实现)_第4张图片


工程目录设计

接口自动化测试框架(Java 实现)_第5张图片


工程实现

github 地址

https://github.com/juno3550/ApiAutoTestFramework

运行示例

工程根目录下执行

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

测试报告示例

接口自动化测试框架(Java 实现)_第6张图片

接口自动化测试框架(Java 实现)_第7张图片

你可能感兴趣的:(接口自动化测试框架(Java 实现))