自动化工具 自研的接口自动化测试平台

wsyu · 2018年04月02日 · 最后由 shirleyxy 回复于 2018年04月20日 · 3851 次阅读
本帖已被设为精华帖!

个人自研的自动化测试平台,借鉴了部分HttpRunner的思想和部分代码,主要实现了项目管理、签名方式管理、接口管理、用例管理和测试计划的制定和运行等主要功能,其它的编辑修改都没做,现在只相当于完成了一个Demo吧。
环境:
Python 3.6.3
Django 2.0.1
Pymysql 0.8.0
Requests 2.18.4

主界面

系统设置

项目管理

测试环境

接口管理

添加接口


用例管理

添加用例

一个用例可以包含多个接口

选择接口后,相应的接口参数会显示在下面,只需要添加相对应的值就行了

多接口之间的参数传递,以美元符号$来定义一个变量,用例执行的时候会在用例上下文中(本接口和前文中已经添加的接口)获取相对应的值,如果一个接口某个参数的值需要的从其它接口的返回值中获取,则需要上相应的接口中提取这个字段。

测试计划

制定计划、执行、查看报告

添加计划

选择项目后,可以获取该项目下所有用例
制定完成后,可以选择立即执行或定时执行(这块暂时没做),执行完成后,可以查看测试报告

查看报告

github地址:https://github.com/wsyu/EasyTest

由于之前在公司已经用tornado实现过一次,除了上面部分,还包括定时任务,用户管理,权限管理,数据库监控,不方便放出来(有少部分别人的代码),这次用django又实现一次, 所以代码和前端都比较随意😂 😜

共收到 17 条回复 时间 点赞

学习一下

请问下,接口管理是怎么实现hrrprunner的api功能的?定时任务这块是用的celery么?

wsyu #3 · 2018年04月03日 作者
yinquanwang 回复

你说的api功能是指接口分层吗?我只参考了HttpRunner中的接口参数怎么传递的部分,因为HttpRunner最终都是形成了测试用例文件,我做是用例都是从数据库里面取值后,直接组装的,然后用requests库执行的,实现了用数据驱动吧,没有用unittest的框架,所以后面做的结果验证比较鸡肋。定时任务这块,之前用Tornado,是用的APScheduler, django这块还没做😂

seveniruby 将本帖设为了精华贴 04月03日 23:37

不错了,再优化下报告,就更完美了

wsyu #6 · 2018年04月08日 作者
meilisong 回复

谢谢夸讲,这段时间准备换工作,没时间优化,等工作稳定了,再重构一遍吧

手动点赞~

一直想这样做一个,终于看到有人在做了

wsyu #9 · 2018年04月09日 作者
loading 回复

还有好多要改的地方,没有时间改😂

缺少很关键的 sql初始化脚本

赞一个

界面还行 就是测试报告太丑。。。

wsyu #13 · 2018年04月10日 作者
dancingcat_ 回复

等以后有空了再改吧

赞一个,

15楼 已删除

想问下,你是如何实现上一接口的出参作为下一接口的入参呢?

wsyu #17 · 2018年04月18日 作者
lishenghong 回复

在上一个接口中,添加提取参数,然后在下一个接口中定义变量,比如要在上一个接口中获取token,直接在提取参数中添加token,然后后面需要使用的时候,直接使用$token

想问下,项目怎么部署,要注意的点有哪些???多谢!!!

楼主,想问下怎么sql初始化

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