作为一名接口自动化测试工程师日常面临最多的工作就是编写接口自动化测试脚本那么在 coding 的过程中最让你觉得枯燥和乏味事情有哪些
每次拿到新接口我们要手动参照文档在脚本中生成一份接口类参数越多花费时间越多
想重构脚本接口数据和用例这块纯编写的工作量就会让人望而怯步
每天都要花上30%的时间去写那些不太需要思考的脚本这线;
解放双手降低纯手力劳动占比进而给自己提供更多的时间去思考、爱主机测评理解产品和设计更多“聪明”的用例
此处规律不宜太过于复杂可先选逻辑简单的部分我们主要选取以下两部分
接口信息来源于接口文档目前市场上比较主流的几个接口文档管理工具有Swagger、RAP、爱主机测评WIKI 或者其他普通文档工具。
如果有条件大家可以根据开发成本和解析接口文件的难易程度来综合考虑确定使用哪个平台管理接口
对于复杂的嵌套参数稍有不按照规范来的就会导致脚本解析错误很大程度上造成了解析的难度
在html上准确的定位信息远比在json上难度大兼容性差
于是尝试解析Swagger返回的json来获得接口信息为后面生成脚本做准备
使用以下方式拿到json结果后就可以直接按照处理字典的方式来获取需要的内容。
由于我们接口属于是存储在类结构中因此根据当前脚本的API Object接口进行遍历替换即可
通过接口参数给出的类型生成符合该类型的值和一些不符合参数类型的值(健壮性)赋值后生成用例,如下代码示例
遇到page相关参数可生成分页用例具体分页测试用例细节就不赘述
该生成规则需要和开发约定一些基本原则另外也需要我们在日常测试中多归纳总结找出那些有固定规律的用例想办法定位生成这类用例
查询类接口可生单参数查询、爱主机测评组合参数查询、冬云服务器测速脚本全参数查询等用例
更新类接口可生成单条更新每个参数组合更新全量更新等用例
用例生成规则可扩展从框架图中可以看到用例规则这块自成独立模版可单独维护便于后续新规则的加入
代码模版可扩展不同团队对于代码规范、测速网站speed基础模版的样式都不一样可自定义生成模版的样式增加了工具的灵活性
支持多种数据类型转换后续可扩展生成API对象、参数字典或其他数据模式
从上例可以看出使用脚本后的效率提高了近一半而从设计到编写完第一版工具仅花费了2~3个工作日还是非常值得一做的。测试脚本语言有哪些
统一基本用例生成思路规避测试工程师在设计基本用例设计时有所遗漏统一用例输出格式便于他人理解和维护用例