背景
于是我开始搭建并体验这个平台,他的优点如下
- 布局优美,设计优雅,代码可维护性强
- mock 功能,支持 swagger 导入
- 自带接口文档,编写自动化接口用例时,可以从接口文档导入
- 测试报告优美,好看,众多优点大家可以去体验下
由于作者不再进行维护了,一些想要的功能只能自己来搞了,我二次开发了以下的功能
- 由于自带的 swagger 导入跟公司的 swagger 格式不符合,导致导入失败,我进行了调整,并且导入后会自动分组
- 原来的定时任务功能只支持在 linux 上部署,并且还要放到特定的文件夹下,易用性不高,我在此做了调整,windows、linux 都可以用,并且有定时计划可以看到任务下次执行的时间
- 原平台没有一个执行项目所有用例的功能,通过研读代码,加上了 ‘执行全部的功能’
- 经过再次体验,发现每个接口都要在头部写 token 验证,于是做了配置化(登录名、密码、url)来自动获取 token,不用每次都要手动去关联登录接口来获取 token 了
- 于此同时,在我们使用平台的时候,很多用例或者接口只需要复制 并且修改下就可以了,对此我加入了复制用例、复制接口的功能,大大提高了维护的效率
- 原平台功能的关联是默认存储了返回值最外层的 key,以至于想关联多层嵌套的时候,没办法满足。于是我修改了关联逻辑,不自动生成关联需要的 key 值了。让用户通过 jsonpath 来自己找,没接触过 jsonpath 的不要紧哈,只需要记住 $..data,类似这样的几乎通吃了,语法很简单。
- 在从返回值做关联之后,发现有些场景还需要从之前的接口的请求参数里拿数据,以此来关联,于是我又做了叫做 ‘参数关联’ 的功能
- 至此改造后,基本可以满足公司对接口平台的需求了,在此非常感谢作者无私的奉献!
- 给大家看下原作者开发的测试报告,非常的好看
注:原开源代码,由于打包链接的是外网的 js、css 文件,最近发现那个网站老师访问失败,所以导致该平台有时候没法访问,最好将这些外部文件下载到本地访问
后续计划
- 准备做数据库的关联校验,和集成 locust 做性能测试平台
- 需要源码或者有问题咨询的可以加我微信 liuxiaolu4986
↙↙↙阅读原文可查看相关链接,并与作者交流