去年在XXX项目中通过将接口测试可视化实现的方式,觉得对于动态自动化测试脚本的维护和实施,有很大的便利,特将实施思路和此类实现方式个人理解的优缺点抛出来,欢迎大家探讨它的适用性。
一、为何要在XXX应用中实现一个测试的平台:可测性不高,被测试点输入输出稳定但内部逻辑多,对其他应用的环境配置依赖较多,接口测试配置过程比较繁杂(业务本身就不在此叙述)。
二、目前实现的测试平台功能介绍
1、实现测试平台如下:
(1)测试结果报表,执行,查询:测试脚本的查询新增编辑停用启用等维护管理,并可同步调用测试执行,展示测试结果和详细结果
(2)测试数据维护:语法和结构类似于接口测试的描述,“规则配置内容”类似于定制接口测试初始数据和创建对象的过程,“测试脚本内容”主要是测试数据输入和输出参数
2、该平台现有框架组件图:其中测试数据运行引擎即为被测的开发接口
三、实施方式优点:可测性的提高和测试效率提升
1、测试用例设计,测试数据准备同步进行,测试执行工作量自动化实现
2、平台实现方式较为简单,脚本较为稳定,页面UI改动,程序逻辑变动,脚本均不受影响(除非被测AO层接口名输入输出参数等改变)
四、不足和后期完善计划
该平台最大的不足,实现方式是嵌入到应用中的,无法通用,且对工程有一定的侵入性(过程中也需要尽可能地在数据,代码上做好隔离)。后续需要将其实现方式尽可能通用出来。未来需要完善的框架如下(紫色部分为待完善)。