0


接口测试【汇报】+日常

一、什么是接口?或者说什么是软件接口?接口测试的意义?

自己理解的定义:有一定标准的、当满足这个标准后,可以通过接口让请求方与接收方直接进行交互的一种方式。

百度百科:在计算机中,接口是计算机系统中两个独立的部件进行信息交换的共享边界。这种交换可以发生在计算机软、硬件,外部设备或进行操作的人之间,也可以是它们的结合。

接口测试意义:提高产品质量、逻辑、准确性

二、接口划分

什么是系统对外的接口? 什么程序内部的接口?

三、接口的组成

接口名称:表明接口作用

接口地址:URL 、HTTP/HTTPS 区别就是后者更安全

HTTP请求包含4个部分,统一资源定位符(URL)、方法(Method)、头(Headers)和体(Body)

**请求方式:post/get **

接口常用的请求 POST 、GET、HEAD 方法的区别

get和post的区别如下:

1.get是向服务器要数据,也就是接收数据,而post是向服务器发送数据

2.get请求的参数在地址栏显示,而且post请求的参数在请求体显示,所以get请求的安全性没有post安全性高

3.get请求的参数有长度的限制,限制的长度根据浏览器而定,而post请求的参数没有长度的限制

4.get 请求体是没有内容的,而post请求体有内容

5.request用法中post和get的区别:

请求参数:必填项、选填项的测试

返回格式:xml/json

返回参数:预期结果,对比

四、接口测试文档(文档的设计)

接口文档(Swagger)、或者 如果没有接口文档可以使用抓包工具Fiddler工具)

http://123.124.130.28:10060/cjbdi/kspall/doc.html

五、接口测试用例(用例基本原则)

正向用例****、反向(逆向)用例

覆盖所有参数,正向用例

覆盖所有必填项参数,正向用例

某一必填参数为空,少传一个参数、 空和 空格 区别?null

比如用户名、密码在复制的过程中带有空格,系统会不会自动屏蔽掉。

11位手机号码输入了12位。判断标准是否需要和三大运营商去匹配?

身份证号的合法性判断,省、市、区、生日、随机数....

不可重复性,测试用例针对不可重复的覆盖,重复发送请求。看是否得到重复数据。注册用户等

规则越细、测试用例越细。

必填参数基础上,少传一个参数、

多传一个参数,逆向用例(讨论)

必填参数,数据类型错误,数据值错误,逆向用例(比如 整形 变成 字符串)

这个里面会用到等价类,边界值的用法

任意组合可选参数,正向用例

与业务逻辑相关,用户身份认证为空或者错误,逆向用例

字段的唯一性校验,如插入数据字段不能重复,发送两次请求,查看第二次返回结果

六、接口测试常见的问题

七、接口测试流程

需求——>计划——>用例——>执行——>报告

八、接口测试工具(以及使用)

**Postman **、jMeter

测试人员借助工具模拟客户端向服务器端发送请求报文,服务器接收请求报文后,对相应的报文做出处理并向客户端返回应答,工具模拟客户端接收应答,然后测试人员检查应答是否准确,这就是接口测试的原理。

Headers 头信息

Host 头域,可以识别走那个服务器—郭伟登主任

头域指定请求资源的Internet主机和端口号,必须表示请求url的原始服务器或网关的位置。

HTTP/1.1请求必须包含主机头域,否则系统会以400状态码返回。

Accept:指定客户端能够接受的内容类型(请求头,客户端希望接受的数据类型)

Accept-Encoding是浏览器发送给服务器,声明浏览器自己支持的编码类型。 或者说客户端所能接受的编码规则或格式规范。

Connection Keep-alive连接不会中断保持链接,当客户端发送另一个请求的时候,它会使用同一个连接。直到服务器和客户端认为会话已经结束,其中一方断开连接。

User-Agent PostmanRuntime/7.29.0 让服务器可以识别客户端使用的操作系统及版本、CUP类型、浏览器及版本。(让 服务器了解客户端)

Content-Type描述的只是发送端;
发送端既可以是服务器也可以是客户端;

HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。
Content-Type代表发送端发送的实体数据的数据类型
比如:Content-Type:text/html;
代表发送端发送的数据格式是html

post请求肯定要发送数据包;
因此对数据包的Type有专门的限定:
Content-Type只能是
application/x-www-form-urlencoded,
application/json
multipart/form-data
或 text/plain中的一种。
其他的均不常见。

返回码理解

200****成功

400 (****浏览器)/(客户端)请求的语法错误,服务器无法理解。

**404 **服务器资源不存在,输入错误URL

**500 **服务器发生不可预知的错误

**503 **服务器当前不能处理客户端请求,一段时间后可能恢复正常。

(2)JSON语法规则

用大括号保存对象、用键值对表示对象、用逗号分隔对象、用中括号保存数组

Webservice接口:走soap协议,请求报文和返回报文都是xml格式

白盒:代码测试,黑盒:功能测试 --先浅后深:先黑后白

全局变量 - 集合变量 – 环境变量 分别怎么建立

Swagger接口文档

Postman配置全局变量

可以在建立的Collection设置全局变量后,再通过具体request请求里面设置局部变量来引用设置好的全局变量。

none 表示没有任何参数

**form-data **可以传文本text 也可以传file

编辑

x-www-form-urlencoded 表单格式

**raw **报文格式 :json .....等

编辑

binary 二进制

Select File 传输多媒体文件

​编辑

超过0.02秒,要考虑性能是否有问题。

http****响应码 Status 300表示重定向。.......

断言成如下显示:

编辑

断言失败如下显示

Postman配置全局变量

可以在建立的Collection设置全局变量后,再通过具体request请求里面设置局部变量来引用设置好的全局变量。

Fiddler****抓包工具
为什么要去抓包,
bug定位:问题是前端还是后端--抓包

手机端使用 Fiddler

Jenkins是一个开源软件项目,是基于java开发的一种持续集成工具,用于监控持续重复工作。

Accept-Encoding是浏览器发送给服务器,声明浏览器自己支持的编码类型。

200成功

400 浏览器语法错误

404 服务器资源不存在,输入错误URL

500 服务器发生不可预知的错误

503 服务器当前不能处理客户端请求,一段时间后可能恢复正常。

Headers 头信息

Connection Keep-alive 连接不会中断保持链接,当客户端发送另一个请求的时候,它会使用同一个连接。直到服务器和客户端认为会话已经结束,其中一方断开连接。

User-Agent PostmanRuntime/7.29.0 让服务器可以识别客户端使用的操作系统及版本、CUP类型、浏览器及版本。

Content-Type描述的只是发送端;
发送端既可以是服务器也可以是客户端;
Content-Type代表发送端发送的实体数据的数据类型。
比如:Content-Type:text/html;
代表发送端发送的数据格式是html

post请求肯定要发送数据包;
因此对数据包的Type有专门的限定:
Content-Type只能是
application/x-www-form-urlencoded,
application/json
multipart/form-data
或 text/plain中的一种。
其他的均不常见。

标签: 测试工具

本文转载自: https://blog.csdn.net/healthestar/article/details/124807944
版权归原作者 小猫鼬maki 所有, 如有侵权,请联系我们删除。

“接口测试【汇报】+日常”的评论:

还没有评论