需求分析

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

开发设计

分层与抽象

技术选型

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

主要类设计

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

测试文件设计

测试用例文件

接口文件

工程目录设计

工程实现

github 地址

https://github.com/juno3550/ApiAutoTestFramework

运行示例

工程根目录下执行

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

测试报告示例

最新文章

  1. PHP unserialize()
  2. 脚本工具(获取某个文件夹下的所有图片属性批量生成css样式)
  3. Caffe学习系列(13):对训练好的模型进行fine-tune
  4. "未能找到类型或命名空间名称",引用dll的时候出错
  5. 详细介绍windows下使用python pylot进行网站压力测试
  6. JAVA Callable
  7. linux bash: sqlplus: command not found 错误处理
  8. MySQL数据库添加一个字段
  9. android6.0源码分析之Camera API2.0下的Capture流程分析
  10. oracle中split的使用
  11. java protected修饰符理解
  12. Python之多进程篇
  13. Java Reflection(getXXX和getDeclaredXXX)
  14. Ubuntu16.04安装TensorFlow及Mnist训练
  15. Java基础-Eclipse第三方安装包管理工具之Maven
  16. C# 面向对象的new关键字的使用
  17. java中集合的组成及特点
  18. C# 获取文件名及扩展名【转】
  19. Gitlab+Jenkins学习之路(六)之Jenkins部署、升级和备份
  20. pageadmin 网站建设系统如何新建进程池并在站点中使用

热门文章

  1. git init和git init –bare的区别:
  2. JAVA类加载器一 父类委托机制
  3. js读取txt文件并下载
  4. Docker容器和宿主机互传文件
  5. Docker名词解释
  6. tarjan——有向图、无向图
  7. spring mvc通过客户端传值,controller获取Sort对象
  8. 用python的turtle作图(二)动画吃豆人
  9. Solution -「UVA 1104」Chips Challenge
  10. Solution -「Gym 102956B」Beautiful Sequence Unraveling