【接口测试】理论基础

一、接口

程序内部的接口和系统对外的接口

程序内部的接口:模块之间的交互,如登录模块、查询模块,两者之间相互调用

程序外部的接口:获取其他系统的资源,没有权限访问他的数据库,只能通过接口,接口就是调用他写好的方法

二、为什么做接口测试

1、在功能测试前,可以就介入接口测试,一旦发现问题,立刻纠正,节省时间成本

2、测试页面无法测试的问题,比如支付为负数的测试

等等。。

三、不同协议分类

webService接口

1、协议:soap协议,通过http传输,请求及返回报文都是xml格式

2、测试工具:通过soapUI工具,导入wsdl文件,就可以看到所有的接口列表,输入不同的参数即可查看返回结果

新建SOAP项目,名称随意,写入项目提供的wsdl文件,点击ok

输入不同的参数,点击执行按钮,查看右侧的输出

Http API接口

1、协议:http协议,通过路径区分调用方法,请求报文都是key-value形式,返回报文一般是json串,最常用的两种请求方式get和post

2、测试工具:最简单的,get接口,在浏览器加?拼接请求报文,直接请求,如果入参是json串,借助工具postman,jmeter完成

3、get和post的区别

a get通过url传参,post放到body

b get的url会有长度限制,post没有限制

c post安全性比get高

d 一般get用来获取数据请求,post用来发送请求

4、http状态码

a 200 正常(2开头的都表示这个请求发送成功,最常见的就是200,就代表这个请求是ok的,服务器也返回了)

b 300 重定向 (3开头的代表重定向,最常见的是302,把这个请求重定向到别的地方了)

c 400 异常(400代表客户端发送的请求有语法错误,401代表访问的页面没有授权,403表示没有权限访问这个页面,404代表没有这个页面)

d 500 服务器异常 (5开头的代表服务器有异常,500代表服务器内部异常,504代表服务器端超时,没返回结果)

  5、 关于xml和json

  都属于通用数据类型,不同系统开发语言不一样,但是都可以识别json和xml,xml出现比json早,目前常见json

 

四、接口用例设计

1、通过性验证,接口是否能通

2、业务逻辑测试,接口测试就是功能测试

3、参数组合验证,根据不同的参数值的含义,如type=1时必须有itemid,但是我只传name,itemid为空

4、安全性验证,绕过测试、密码安全

5、异常验证,是否必传、参数类型、入参长度

五、用例模板

1、项目            是哪个项目的
2、模块            这个接口是属于哪个功能模块的
3、用例id
4、接口名称
5、用例标题      用例是干嘛的
6、请求方式      GET/POST
7、请求url         url地址
8、请求参数
9、前置条件       有依赖的时候,比如说要测登录失败3次的
10、结果验证     预期结果
11、请求报文     
12、返回报文  
13、测试结果    通过/失败
14、测试人员 

原文地址:https://www.cnblogs.com/amengmeng/p/8032091.html