其他测试框架 接口测试平台-自动生成测试用例并执行生成报告

chen · July 02, 2019 · Last by a1l9e8x6 replied at December 26, 2019 · 5720 hits

interface-master轻量级便捷接口自动化平台

目前还有很多缺憾,请各位大神多提提意见,进一步修改。
包含五个功能 项目管理,模块管理,接口管理,用户场景管理,用例执行,定时任务

其核心设计目标

自动生成接口测试用例,解决接口测试人员花费太多的时间去编写,接口参数是否必填,参数数据类型限制,参数数据类型自身的数据范围值限制,用户场景等用例

开发环境

环境:python3.6.5

后端框架:
WEB框架:python-flask
登录鉴权:Flask-JWT
数据库:Flask-SQLAchemy
定时调度:Flask-APScheduler
Execl操作:openpyxl
虚拟数据 :Faker
邮件:Flask-Mail

前端框架:
vue2.0+elementUI

体验地址
http://106.13.20.49 账号 密码 admin

运行项目

后端运行:
进入interface-master目录 执行 flask initdb 创建表格

执行 flask forge 生成默认的项目和模块数据,管理员账号密码 admin/admin

执行 flask run 运行项目

配置发件邮箱

前端运行:
安装 Node.js环境
进入interface目录
执行 npm install 加载资源
执行 npm run dev 运行项目
如npm加载太慢请使用cnpm

使用流程介绍
登录 账号密码 admin/admin

新增项目和新增模块就不用多说了,主要说下新增接口

接口测试配置
案例:

url: http://127.0.0.1:7777/jia
herder : content-Type :application/json;charset=UTF-8
协议: POST
参数: {"a":"11","a1":"10"}
响应信息:
{'msg': '请求成功 ', 'msg_code': 1000, 'a_list': '3333'}
msg_code:1000 请求成功的code
限制条件:
a,a1必填
a ,a1 int类型可输入范围 1-100
以下开始配置:
1.Body 输入整个请求参数结构,需要测试的参数值设置变量${变量名称}

点击新增参数填写相对应的内容

如一个广告接口,01 表示投放某个版面位置, 02表示投放某个版面位置
这时候的测试案例参数值就有两个 01和02
案例参类型 选择- 列表
案例参数值 ['01','02']

案例2 :接口B需要登录后的token才能请求

1.新增一个登录接口
2.新增接口B时点击新增调用接口按钮


获取登录成功后的token
如:登录接口请求成功返回信息如下
{"resultCode":"0000000000","resultMsg":"正常","resultData":{"token":"fsfsdfj22320023"}
返回路径填写:resultData.token

我们只需在需要用到token的地方填写${token}就可以了

如Get请求 Body填写方式

结果校验
如返回信息 {'msg': '请求成功 ', 'msg_code': 1000}
如 msg_code = 1000 表示该接口请求通过
校验路径只需如下填写

如返回信息
{'msg': '请求成功 ', 'msgList': [{"a":10,"b":11},{"a":"11","b":12}]}
msgList 第一个 a =10表示正确
校验路径只需如下填写

用户场景测试

点击 新增场景接口


在下一个接口中 body 和 信息头可直接使用 ${变量名称}来获取值

CASE新增与执行

查看case执行日志

定时任务
新增任务

查看调度日志

共收到 24 条回复 时间 点赞

楼主 体验网址 提示 密码不对 登录不进去啊

楼主,登录你没有解决跨域问题

chen #3 · July 08, 2019 作者
beiank 回复

不好意思 后台没开,现在开了

chen #4 · July 08, 2019 作者
旋风小子 回复

不好意思 后台关了,现在已开启

正文好像没介绍 自动生成 相关的功能?

chen #6 · July 09, 2019 作者
陈恒捷 回复

会自动生成 接口参数是否必填,参数数据类型限制,参数数据范围值限制(数字是取值范围可精确到小数位,字符串是长度)

chen #7 · July 09, 2019 作者
beiank 回复

现在可以了 我放了一个测试case 可以去查看下执行后的结果

楼主,你这个平台每条接口的数据都要一个个输入吗,能不能excel自动导入

chen #9 · July 09, 2019 作者
beck 回复

还没execl导入功能,以后可以考虑增加,现在接口可以直接复制

chen 回复

请问楼主,平台用的是flask+vue,vue好入坑吗,之前看flask教程,上面用的是bootstarp,看的云里雾里

chen #11 · July 09, 2019 作者
beck 回复

好入坑,vue我边学边做的,flask也很简单,可以看下书籍 FlaskWeb开发:基于Python的Web应用开发实战

chen 回复

向你学习,哈哈,也打算动手试下

样式有点缺失啊,刷新了下404了

接口有sign签名参数进行鉴权的怎么破???

chen #15 · July 11, 2019 作者
yiwang 回复

新增接口里面有个新增调用接口,调用登录接口获取登录成功返回的sign信息设置为变量, 在你想放的地方写入${变量名}就可以了。

chen #16 · July 11, 2019 作者
一本正经 回复

路由没有配置好

Author only
chen #18 · August 07, 2019 作者

可以新增测试场景

体验账号密码改了嘛?

账号密码不能登录了呀楼主

楼主能说下自动生成用例的原理么

楼主 体验网址 提示 密码不对 登录不进去啊

Author only

请问怎么自动生成异常用例,然后开源了吗?

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up