接口测试之接口api文档的重要性
接口文档的特点
接口文档,顾名思义就是对接口说明的文档。好的接口文档包含了对接口URL,参数以及输出内容的说明,我们参照接口文档就能编写出一个个的测试用例。而且接口文档详细的话,测试用例编写简单,不会遗漏。
如果一个接口文档没有写清楚,你从文档中分不出哪些儿参数是必需的,哪些儿是非必须的,而且没有参数的取值说明,返回值的结构等信息的话,测试人员是无法编写相应的测试用例的。但是由于开发人员不愿意写文档,所以很多接口文档相对来说比较简单,模糊不清,这对我们做接口自动化测试是很大的阻碍。
7.2 接口文档的结构
接口文档可以包含很多信息,有的愿意写就可以多写的,不太愿意写的话,就写的信息相对来说会少点儿。不过,下面几项内容必须有,这是我们使用接口中和测试接口的依据:
(1)接口名称。标识各个接口的简单说明,如登录接口,获取项目详情接口等。
(2)接口URL。接口的调用地址,在测试环境下前面的域名可能不一样,不过接口名是不会变的。
(3)调用方式。接口的调用方式:Post/Get方式,决定了如何调用接口及传递参数。
(4) 参数。接口需要传递的参数,参数需要增加些儿说明:
(a) 参数值类型说明:参数值要说明一下,只支持字母,数据,特殊字符或是字母数据混搭。
(b)参数长度说明:参数接收最大多少个的字符串,或是最大是多少的数值等。
(c) 参数取值范围:像枚举型的参数,只接收什么范围内的数据,如1-5等。
(d)参数的配合说明:有些儿参数需要配合起作用的,如:offset和count参数。
(e) 参数是必需的还是非必需的。
(5)返回值。接口的返回值说明需要包含正确和错误的情况,正确的情况下有哪儿数据,错误的情况下会有什么提示?
(6)其他的一些儿说明。上面的说明是通用的,还有其他的一些儿说明,如必须是登录状态调用,或是版本号等说明,在某些儿情况下也需要说明一下。
严格要求的公司会要求接口开发人员标明上面相关的接口说明,此时我们做接口测试的时候,就可以参照文档来转化我们的测试用例。但目前国内很多公司不太注重文档,接口信息不全是常有的事情。
7.3 接口文档缺失
针对目前接口文档信息不全或是没有接口文档的情况下,如果上面的领导要求我们做接口自动化测试,这无异是一个非常艰辛的任务。但是奉承着“兵来将当,水来土掩”的原则,我们要想着解决办法。
(1)完全没有接口文档。这个情况是最麻烦的,我们要找开发人员来商量 ,最好能补个接口文档,如果实在来不及那就给个调用接口的实例。实例中会有接口地址,参数等信息,我们去测试环境中调用一下,就能看到返回结果的情况。
(2)接口文档信息不全。信息不全这个最常见,像参数说明缺少啊,没有说明哪些儿是必需的参数,哪些儿是非必需的,或是没有说明取值范围等。此时我们能问开发就问开发,如果不太方便,就要做尝试:一般非必需的参数不会做容错的判断,必需的参数检测的方面比较全面。
(3)文档不是最新的。接口的后续的工作中被修改或是优化过,我们按接口文档上的说明去调用,返回和预期的不一样。通知开发更新文档,然后用最新的文档再去修改测试用例。
这个接口文档需要和接口开发人员做好约定,开发新接口时要把接口信息写清楚,如果更新原来的接口,要及时更新接口文档。同时在写接口自动化测试用例的时候,要多和开发人员沟通,只有通过大家的一起努力,才能把工作做的越来越好。
接口测试之接口api文档的重要性的更多相关文章
- SpringBoot+rest接口+swagger2生成API文档+validator+mybatis+aop+国际化
代码地址:JillWen_SpringBootDemo mybatis 1. 添加依赖: <dependency> <groupId>org.mybatis.spring.bo ...
- 干掉 Postman?测试接口直接生成API文档,这个工具贼好用
大家好,我是小富~ 前几天粉丝群有小伙伴问,有啥好用的API文档工具推荐,无意间发现了一款工具,这里马不停蹄的来给大家分享一下. ShowDoc一个非常适合团队的在线API文档工具,也支持用docke ...
- 干掉 Postman?测试接口直接生成API文档,ApiPost真香!
实不相瞒我的收藏夹里躺着很多优质的开发工具,我有个爱好平时遇到感兴趣的开发工具都会记录下来,然后有时间在慢慢研究.前几天刚给同事分享一款非常好用的API文档工具,真的被惊艳到了,粉丝朋友们也感受一下吧 ...
- 所谓的规范以及JDK api文档的重要性
所谓的规范,就是在jee api 文档里对应的接口. 可以从jdk文档和jee文档的目录结构,接口中获取对整个编程范围的把握
- PHPDoc/PHPDocumentor生成API文档
PHPDocumentor是一个用PHP写的强大的文档自动生成工具,对于有规范注释的php程序,能够快速生成具有结构清晰.相互参照.索引等功能的API文档.旧版本是PHPDoc,PHPDoc是PEAR ...
- springboot06-swagger2 自动化api文档
1.springboot 项目中添加swagger2依赖: <dependency> <groupId>org.springframework.boot</groupId ...
- 以api文档为中心--前后端分开发离新思维
api文档编写好像很简单,其实不是.一个良好的api文档,需要就有以下内容:接口详细描述,接口参数详细描述,接口返回结果详细描述,容易理解的范例.这些内容其实是不少的,编写过程中还非常单调乏味.再加上 ...
- FastDFS接口API文档说明
FastDFS接口API文档说明 时间:2012-03-17 来源:R9IT 作者:R9传奇 一.命令行的上传: 上传命令1. /usr/local/bin/fdfs_upload_file conf ...
- [API]使用Blueprint来高雅的编写接口文档 前后端api文档,移动端api文档
网址:http://apiary.io/ 介绍:一款非常强大的前后端交互api设计编辑工具(编辑器采用Markdown类似的描述标记,非常高效),高颜值的api文档,还能生成多种语言的测试代码. 中文 ...
随机推荐
- Landpy.ActiveDirecoty,按照Active Record Pattern设计的方便Lib开源发布
想方便的操作AD吗,不想记住那么多AD Attribute名称和常量?请使用Landpy.ActiveDirecoty库,按照Active Record Pattern设计的AD Lib已经在Code ...
- 九度 1534:数组中第K小的数字(二分法变形)
题目描述: 给定两个整型数组A和B.我们将A和B中的元素两两相加可以得到数组C.譬如A为[1,2],B为[3,4].那么由A和B中的元素两两相加得到的数组C为[4,5,5,6].现在给你数组A和B,求 ...
- 关于C中I/O缓冲区的解释
用户程序调用C标准I/O库函数读写文件或设备,而这些库函数要通过系统调用把读写请求传给内核,最终由内核驱动磁盘或设备完成I/O操作.C标准库为每个打开的文件分配一个I/O缓冲区以加速读写操作,通过文件 ...
- STM32的操作过程,寄存器配置与调试过程(转载)
很多学习stm32的,为什么学习stm32他也不知道,我们所知道的就是各个论坛讨论stm32的很多,而我们很多人之所以学习stm32是很多的淘宝卖家做了大量的图片文字宣传,于是我们经不住诱惑就买了板子 ...
- mysql触发器的实战经验-不错的文章
1 引言 Mysql的触发器和存储过程一样,都是嵌入到mysql的一段程序.触发器是mysql5新增的功能,目前线上凤巢系统.北斗系统以及哥伦布系统使用的数据库均是mysql5.0.45版本,很多 ...
- js array.filter实例(数组去重)
语法: 循环对数组中的元素调用callback函数, 如果返回true 保留,如果返回false 过滤掉, 返回新数组,老数组不变 var new_array = source_array.filt ...
- cocos2dx游戏--欢欢英雄传说--添加人物
接下来需要导入精灵帧资源,因为之前下载了TexturePacker,然后通过TexturePacker的"Publish sprite sheet"方法可以生成一个.pvr.ccz ...
- Sencha Cmd创建Ext JS示例项目
Sencha提供了免费的Cmd工具,可以用来创建Ext JS项目并提供了一些便利的功能. Sencha也在官方文档中提供了一个示例来演示如何创建一个Sample Login App. 本文就介绍一下这 ...
- MQTT的学习研究(十)【转】mosquitto——一个开源的mqtt代理
MQTT(MQ Telemetry Transport),消息队列遥测传输协议,轻量级的发布/订阅协议,适用于一些条件比较苛刻的环境,进行低带宽.不可靠或间歇性的通信.值得一提的是mqtt提供三种不同 ...
- Excel 2010 如何在Excel的单元格中加入下拉选项
http://jingyan.baidu.com/article/03b2f78c4ba8a05ea237ae95.html 第一步:打开excel文档,选中需加入下拉选项的单元格. 第二步:点击 ...