转载地址:https://testerhome.com/topics/3572
目前在做接口测试方面的工作,结合部门现状,初步整理及搭建了api的自动化测试框架,现在把我的思路、框架结构和大家分享出来,一方面希望可以为大家提供一些参考,另一方面也希望大家多提意见,以便测试框架的改进~~
主要目的:
1, 各版本用例管理
2, 结构验证、节点数据正确性校验
3, 简单业务逻辑覆盖
4, 各版本回归性测试
5, 线上环境监控及预警
大体构建流程:
a.接口所涉及的信息都以数据结构形式进行存储。
考虑到接口返回值一般都较庞大、逻辑关系较复杂,如果单靠人工进行采集的话工作量非常巨大,为了缓解压力提供了通过json串解析输出结构的功能。
b.接口测试用例的管理,支持自动、手工执行的case录入。对正常、异常状态的验证。
将收集的输入、输出数据以树型结构展现,通过简单的勾选来完成测试用例的输入参数及预期输出结构进行关联。
c.测试用例的输入参数除可输入外,也支持与上行接口的输出参数进行关联。
在执行测试用例时,自动执行上行接口,取得相应节点对应值,自动赋予当前用例接口参数。
比如有些接口需要在登陆的情况下去操作,那么就可以配置上行接口,模拟登陆,然后取得登陆key,用key做为参数去执行用例。
e.接口支持以版本号、单接口、多接口的模式执行测试。
将接口各用例的执行情况(接口耗时 、成功与否、失败原因、异常节点等)信息,记入日志管理模块,同时为测试人员提供测试结果查询页面,对测试结果做大体的分析,尽可能的帮助测试人员去定位接口中存在的问题。
f.对于频繁变动的接口,影响范围又比较模糊,完全可以以大版本进行自动化回归测试,排查影响范围,以减少人工遗漏。
g.支持接口返回值规则进行验证,输入节点与规则配置进行绑定后,执行过程中系统会自动取出相应节点值进行规则验证。(集合、长度、类型、格式等)
除了对输出结果进行简单的规则验证外,也支持输入参数集合绑定,可以对集合内所有项进行循环调用、循环验证排查。
h.可以对接口进行日常巡检标识,对于有巡检标识的接口,系统会每天定时排查这些接口,协助线上环境监控及预警及记入日志管理模块。
主要以web页面进行操作,通过服务地址,就可以访问自动化测试平台。
测试人员只要对接口有基本了解,就可以使用自动化测试平台,自行录入、执行测试。