开源一款接口自动化平台,支持自动生成测试用例、MOCK等功能。平台其实已经写好蛮久了,之前一直在coding托管,最近迁移至github公共仓库
演示地址:http://42.194.187.183:7778/#/ youke/admini0 开源地址:https://github.com/Biexei Testerhome:https://testerhome.com/topics/35203
基于vue+elemui+java+mysql jdk1.8、nodejs12.19.0、mysql8、python3.6.5、redis3.2.100
- 用例支持har/json/yaml/excel/csv导入
- 支持根据等价类,边界值,正交法,笛卡尔积自动生成测试用例,且支持动态数据,数据来源支持数据库
- 测试套件支持并行,大幅提升测试效率,生成的测试报告美观,报表数据丰富
- 定时任务支持动态启停,配置
- 支持在线配置代理
- 动态mock服务,无需启停服务,且支持请求转发
- 丰富的断言策略,目前已支持jsonpath,xpath,header,code,响应耗时
- 支持接口间数据依赖,方便测试流程
- 数据中心支持接口依赖,sql依赖,反射方法。解决数据依赖,数据加密的痛点
- 稳定性测试
目前支持了四种测试数据的来源,第一种是基于jsonpath从接口返回值提取数据,第二种是通过SQL查询语句,第三种是基于内置的反射方法,第四种是基于固定值。采取${xxx}语法表达式提取
自定义了一套生成用例的约束,根据约束填写模板,将会产生标准的测试用例文件,而后再导入至平台即可
- 以自动生成用户注册接口测试用例为例。支持生成正交测试用例,也可以生成全量的笛卡尔积测试用例。同时为了保证用例的可复用性,支持生成动态测试数据(如用户注册生成的用户名具有唯一性,这就需要保证每次生成的用户名都是唯一的)
支持串行、并行,两种策略可自行保证用例的执行顺序or高效运行。 以及还算丰富的测试报告
mock基于java的mock-server。目前支持多节点(可方便不同人员调试相同接口地址),以及丰富的命中策略
目前可采取两种方式解决用例间的数据依赖问题 1.数据中心-接口依赖创建
2.配置前置用例
存在两种方式主要是为了减少重复请求次数,以及确保数据的一致性,如需要前置接口返回的多个数据,通过第一种方式则会在需要数据的时候就请求一次,而通过第二种方式则无论需要前置接口的多少个请求数据,都只请求一次
通过反射方法的形式,可自定义方法处理加密(统一处理类:org.alex.platform.common.InvokeCenter),目前仅提供md5哈希
不需要。系统在创建项目时已强制为每个环境配置host和domain,目前支持5种环境。即使在用例中引用了数据库也无需担心环境问题 在执行测试套件时可指定运行环境
支持。举个例子,第一步:配置请求转发 第二步:试验。可以看到/user/list接口已经转发至真实接口