做了两周的接口测试,也是首次自己负责接口测试的工作。
开展接口自动化测试工作的流程如下:1. 明确需求,了解清楚每个接口的具体含义以及总体要实现的功能 2.设计接口自动化用例架构 3.编写用例
明确需求:首先还是从总体功能上来了解前端要实现什么功能,明确业务逻辑。然后再对比接口去了解接口的含义。在这个过程中,前端的实现和接口的实际传参是有一些不同的,最后还是要花时间在熟悉接口需求上(比如各传参,传参是写死的还是从其他接口获得的、返回值可以作用于哪些接口,在这些上面我花了蛮多时间去搞明白的,急需找到更好的方法!!!)
用例架构设计:这个根据需求方面来规划接口与接口的关联,规划某些单接口的执行顺序,还要规划哪些接口可以用mock(实际上我还没碰到这个场景);总体的目的:1.没有关联的单接口可以先设计 2.需要关联数据的接口,那就要规划好执行顺序了,把接口的参数来源设计成来自某个接口、直接从数据库获取(能设计成从数据库获取就尽量从数据库获取,这个方法省时省事)、或者设置成全局变量 3.注意基境的问题:如果有新建和删除操作,那么先执行新建,后续的编辑等操作就对新建的数据进行,最后再执行删除操作(最好是直接去操作数据库进行删除操作,因为用接口可能会存在删除不彻底的问题);对已有数据进行编辑的操作时,最好先备份,在操作后还原,不能影响原有数据库表的数据(备份还原操作我现在还没试过,平台不支持) 4.数据参数化的实现(jmeter的csv功能),对同一接口的参数循环传递参数
编写用例:设计好用例架构后就可以编写用例了,用例分为正向和异常,覆盖关键用例即可(比如进行参数可靠性测试时,异常用例只需考虑空值、参数类型、参数长度、空字符串就行);单用例填写好请求头、传参、校验,在这块遇到蛮多坑的,比如开发提供的文档可能有问题、接口改了没同步,可以用postman或者浏览器抓包分析、可以查询数据库表