接口测试理论知识

接口测试概述
1、什么是接口?
生活中的接口:插座、水龙头、转接头、充电器、USB、电源
总结:链接两个/多个设备,并且进行物质传递

 API(Application Program Interface):属于一种操作系统或程序接口
 GUI(Graphic User Interface):属于一种图形操作系统

2、接口的类型
我们说前端与后端的数据交互其实就是我们说的接口,而检查接口是否传递正常就是一种接口测试,name接口是怎么传递数据的?答案是网络,那么我们根据不同的网络协议(两种常见的web协议接口:一类是HTTP协议的接口、一类是web Service接口)划分为不同的接口测试类型

两种接口的特点:
	HTTP接口:
			协议:HTTP协议
			请求报文:KEY-----VALUE
			返回报文:json
			请求方法:get/post
			接口工具:postman/RESTClient/jmeter
	web Service接口:
			协议:soap协议
			请求报文:xml
			返回报文:xml
			请求方法:soap协议包装的内容
			接口工具:soapUI/jmeter
HTTP接口与web Service接口的区别:
	HTTP接口:基于HTTP协议,通过Post和Get得到你想要的东西,处理数据比较简单,效率较高
			 当你调用一个本服务的内容的时候,不涉及跨域的问题,使用HTTPService的方式
	web Service接口:使用Soap协议得到你想要的东西,能处理比较复杂的数据模型,速率较慢
					若你需要在后台调用一个其他应用的服务,这个时候就要用webService的方式来调用

## 什么是接口测试?
接口测试是测试系统组件间接口的一种测试
接口测试主要用于检验外部系统与系统之间以及内部各个子系统之间的交互点
测试的重点是要检查数据的交换、传递和控制管理过程,以及系统间的相互逻辑依赖关系等。
为什么要做接口测试?
可以发现很多页面上发现不了的问题(bug)
检查系统的异常处理能力
检查系统的安全性、稳定性
前端随便变,接口测好了,后端就可以不用变了
接口测试是一个完整的体系,也包括功能测试、性能测试和安全测试
可以更早的时候进行接口测试
接口测试的原理
用工具模拟客户端发送请求
服务端响应结果,并将响应结果展示在工具上
接口测试的流程
接口测试也属于功能测试
分析接口文档——》设计接口用例——》准备脚本文件——》执行接口活动——》提交接口测试报告
接口文档概述
接口文档:是对接口说明的文档,好的接口文档包含了对接口URL、参数以及输出内容的说明,我们参考接口文档说明就能编写出一个个的测试用例,而且接口文档详细的话,测试用例编写简单,不会遗漏
接口文档的重要性
1、开发角度:有了接口文档,各个模块之间的开发才能更清楚的知道对方的接口是如何调用和定义的,并且新入职的或新接手的开发才能快速的上手这个接口,具有指导意义。
2、测试角度:有了接口文档,测试才知道如何调用、如何传参、如何设计用例来验证结果的正确性,不然口口相传,一方面沟通的成本会很大浪费时间,另一方面不能保证在口头交流过程中漏掉一些东西,导致最终质量上出现缺陷,可见接口文档多么重要
接口文档的组成
必须有的六元素:
1》接口名称:标识各个接口的简单说明,如登录接口、获取项目详情接口等
2》接口URL:接口的调用地址,在测试环境下前面的域名可能不一样,但是接口名不会变
3》调用方式:决定了如何调用接口以及传递参数(get/post)
4》参数格式:接口需要传递的参数,参数需要增加哪些说明(参数名、参数类型、参数业务含义、参数是否为空、每个字段的长度(可选,一般要提供,有严格要求的字段要特别说明)、每个参数的单位)
5》返回报文:参数名、参数类型、参数业务含义、参数是否为空、每个字段的长度(可选,一般要提供,有严格要求的字段要特别说明)、每个参数的单位
6》参数参照码说明:错误码。错误码说明
接口文档缺失
1、完全没有接口文档。找开发人员商议,最好可以补一个接口文档,若来不及就要个调用接口的实例,实例中会有接口地址、参数等信息,我们去测试环境下调用一下,就可以看到返回结果的情况
2、接口文档信息不全。如参数缺少,没说明什么是必须的参数什么是非必须的参数,或是没说明取值范围等。能问开发要就问开发,若不方便也要做尝试,一般非必须的参数不会做容错判断,必须的参数检测的方面比较全面。
3、文档不是最新的。通知开发要更新文档,然后用最新的文档去修改测试用例。

注:接口文档要与开发人员做好约定,开发新街口时要据接口信息写全,若更新原来的接口,要及时更新接口文档
	同时在写接口自动化测试用例的时候,要多和开发人员沟通。

设计用例的方法
接口测试用例的设计方法其实与功能测试用例的设计方法类似,因为接口是要满足设计要求的,而接口测试所依据的也是需求说明书
但是接口测试是通过代码去测试代码,所以与功能测试的用例有区别,而且为了保证覆盖率可以从一下几个方面去设计测试用例

1》通过验证:首先要保证这个接口功能是好的,也就要正常的通过性测试,按接口文档上的参数正常输入,是否
   可以返回正确的结果
2》参数组合
3》输出结果覆盖:接口处理正确的结果可能只有一个,但错误的有很多,覆盖每一种返回码,可以验证错误返回
   信息与文档是否一致
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值