接口测试 自研接口自动化测试平台开源篇

kong · 2019年08月09日 · 最后由 kong 回复于 2019年10月18日 · 5414 次阅读

ATest(接口自动化测试平台)

主要功能:

  1. 可对测试环境、测试接口、测试用例、测试集、测试任务、Mock 绑定变量、替换域名、替换用例变量值、邮箱等信息进行管理
  2. 可手动执行测试用例、测试集进行调试,并显示其请求信息、返回信息及断言结果
  3. 可使用控制器对测试集请求进行控制,包括循环请求、条件请求,可嵌套使用
  4. 可定时或根据任务名执行多个测试任务(包含多个测试集),并保存其测试结果、发送测试报告到指定邮箱
  5. 可查看测试任务执行的请求信息、返回信息及断言结果
  6. 可扩展自定义函数,包括 java 和 js

wiki:https://github.com/shirleydl/ATest/wiki

源码地址:

https://github.com/shirleydl/ATest

历史文章:

收集建议篇:https://testerhome.com/topics/20088

环境说明:

  1. Java 运行环境,jdk1.8
  2. Mysql 数据库,8

项目部署:

  1. 安装 Java 环境,推荐:jdk1.8
  2. 安装服务器,推荐:tomcat8
  3. 安装 Mysql 并启动,推荐:8
  4. 创建数据库执行 atest.sql 文件
  5. 部署 ATest(接口自动化测试平台),以 tomcat 为例,直接解压 ATest.war 到 tomcat 目录下的 webapps 目录里,更改\WEB-INF\spring\appServlet\servlet-context.xml 数据库配置
  6. 使用命令运行 ATestActuator(定时执行器),以 windows 系统为例,把 ATestActuator.bat 与 ATestActuator.jar 放到同一个目录下,更改 jar 包里面 applicantContent.xml 数据库配置,并双击运行 ATestActuator.bat

百度网盘链接:https://pan.baidu.com/s/1fhItquuAfzi39r6Ttci3ng
提取码:uio9

功能介绍:

环境管理:

增删查改环境信息

Mock 绑定变量:

增删查改 Mock 绑定变量信息

接口管理:

增删改查接口信息

用例管理:

  1. 增删查改用例信息
  2. 请求方法支持:get、post(form)、post(raw)
  3. 断言方法支持:等于、不等于、包含、不包含、正则匹配、以。。。开始,以。。。结束
  4. 请求头值、请求内容、断言信息、用例变量都支持系统给定或自定义扩展函数引入
  5. 支持用例内全局变量使用
  6. 支持手动执行用例并返回结果,可针对用例进行调试
  7. 支持复制用例

测试集管理:

  1. 增删查改测试集信息
  2. 用例管理:
  3. 支持增删查改关联的测试用例及其他执行信息
  4. 支持增删改控制器
  5. 支持为每个关联的用例信息添加编辑循环用例变量信息
  6. 支持为每个关联的用例信息绑定引入测试集全局变量
  7. 支持手动执行测试集并返回结果,可针对测试集进行调试
  8. 支持复制测试集里面的用例信息到其他测试集里

产品项目管理

  1. 增删查改产品项目信息
  2. 测试集管理:增删查改关联的测试集,可批量添加测试集到指定任务里

任务管理

  1. 增删查改任务信息
  2. 测试集管理:增删查改关联的测试集
  3. 支持复制任务里面的测试集信息到其他任务里
  4. 支持设置前置任务,在执行任务前执行,并分享所有测试集变量值到本次测试任务里执行使用(注意变量名不要重复,否则会被覆盖)
  5. 支持设置发送测试报告到指定邮箱
  6. 支持批量清空任务测试结果

替换管理

  1. 增删替换信息(替换环境地址、替换用例变量值、替换循环用例变量分割值)

报告邮箱管理

  1. 增删报告邮箱信息(发件人邮箱信息、收件人邮箱地址)

函数助手:

可查看系统给定的所有函数名及使用格式

如何开始:

step1: 维护测试环境域名:点击环境管理——新增——填写环境信息提交

step2: 维护接口 api:点击接口管理——新增——填写接口信息提交

step3: 维护用例信息:点击用例管理——新增——填写用例信息提交

step4: 维护测试集信息:点击测试集管理——新增测试集信息——点击用例管理添加该测试集所需的用例及执行信息

step5: 维护任务信息:点击任务管理——新增执行任务信息——点击测试集管理添加该任务所需的测试集等信息——点击开启/循环,等待执行

ps:本人非测试开发从业人员(功能 tester 一枚),因为兴趣,每年利用空闲时间自学并做点东西来维持那残存的开发能力,所以此次开源除了分享设计平台的灵感点,还顺便跟大佬们互相交流学习,欢迎留言或 qq(3318549466) 私聊

共收到 3 条回复 时间 点赞

v1.2.0(20191118)

新增内容:

  1. 新增邮箱配置并发送测试报告到指定邮箱功能

修复优化:

  1. 优化任务执行规则:
  2. 定时任务执行器只执行等待中开始时间小于当前时间并且没有开启循环的测试任务;
  3. 按任务名执行器只执行等待中或已完成匹配任务名并且有开启循环的测试任务

数据库

  1. 新增 emial 表
  2. task 表添加 isSend、emial_id 字段

v1.1.1(20191101)

新增内容:

  1. 增加请求参数、用例变量导入功能,利用请求报文可批量新增对应参数名和参数值(新增用例页面)
  2. 新增 Custom_toDbRCUD() 函数,可对数据库进行操作
  3. 函数参数值可直接使用绑定变量(测试集变量)

大佬数据库也给一下呀,不给数据库就是耍流氓

kong #4 · 2019年10月18日 Author
Terrydgl 回复

github 上面有 sql 脚本啊,直接运行就好了

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册