软件测试软件测试之路Java子弹

Postman接口测试要点+自动化测试实例

2020-04-15  本文已影响0人  李菜菜同学

一、postman工作原理

1.发请求

2.接受请求响应

3.接收响应显示到页面

二、测试的质量特性

做到说出大点,然后根据项目具体举例。

1.功能性--接口逻辑的正确、准确性

(输入不同正确的组合,验证返回正确(不同的响应状态),逻辑正确,精度正确)

2.功能性--接口的关联性

(依赖有无,正确,其他,时间)

3.接口的异常健壮性(第三方支付的api)

(空,不符合需求(业务--eg字符/汉字,功能),功能不符合(参数个数,类型,缺失,左右边界,上下溢出,优先级,逻辑,文件上传打开关闭各种问题))

4.接口的安全性

(输入的内容对域(eg:http://ip/v?id=1234,id修改后也可以访问),对访问控制,权限,数据库sql注入)

【接口测试重点】

1、参数验证

接口参数的边界值。

例如,传递的参数足够大或为负数时,接口是否可以正常处理

2、业务功能

接口是否满足了所提供的功能,检查接口返回的数据是否与预期结果一致。

3、异常场景

重复提交、并发提交、事务中断、多机环境、大数据量测试

检查接口的容错性,假如传递数据的类型错误时是否可以处理。

4、接口的性能

响应时间、吞吐量、并发数、资源要求

5、接口的安全性

外部调用的接口、权限验证、SQL注入

三、http协议

osi七层网络模型 使用代理抓包工具协议的内容 get与post 常用的http动词

四、postman发送不同类型的请求

常用5678条 权限认证例子

需掌握问题:

1.请求和响应的属性解析

一次完整的HTTP请求所经历的7个步骤

说明:HTTP通信机制是在一次完整的HTTP通信过程中,web浏览器与web服务器之间将完成下列7个步骤:

建立TCP连接

Web浏览器向web服务器发送请求命令  例如:GET /sample/hello.jsp HTTP 1.1

Web浏览器发送请求头信息

Web服务器应答  例如:HTTP/1.1 200 ok

Web服务器发送应答头信息

Web服务器向浏览器发送数据

Web服务器关闭TCP连接

重要响应头及属性:

1).General  Headers 通用信息头   既能用于请求消息中,也能用于响应信息中,但与被传输的实体内容没有关系的信息头。里面包含内容详解如下:

Request  URL         请求的地址

Request  Method    请求的方法类型

Status  Code      响应状态码

Remote  Address    表示远程服务器地址 

2).Response Headers   响应头

Content-Length响应体的长度

Content-type返回的响应MIME类型与编码:告诉浏览器它发送的数据属于什么文件类型

Cache-control指定请求和响应遵循的缓存机制

    1)public 响应可被任何缓存区缓存

    2)private 对于单个用户的整个或部分响应消息,不能被共享缓存处理

    3)no-cache 表示请求或响应消息不能缓存

  4.date            原始服务器消息发出的时间

  5.Server         web服务器软件名称

  6.Last-Modified   标记请求的资源在服务器端最后被修改的时间

3).Request  Headers  请求头

Accept告诉服务器可以接受的文件格式。根据Accept头的不同,按照相应的顺序进行produces的匹配。

Accept-Encoding    gzip,deflate,sdch,br 指定浏览器可以支持的web服务器返回的内容压缩编码类型

Accept-Language    浏览器支持的语言

Cache-Control    指定请求和响应遵循的缓存机制

Connection      keep-alive 表示是否需要持久连接

Cookie    HTTP请求发送时,会把保存在该请求域名下的所有cookie值一起发送给web服务器

Host          指定请求的服务器的域名和端口号

Referer     告诉服务器是从哪个网站链接过来的

User-Agent用户代理:简称UA。内容包含发出请求的用户信息,使得服务器能够识别客户端使用的操作系统及版本、CPU类型、浏览器及版本、浏览器渲染引擎、浏览器语言、插件等。

Authorization   当客户端访问受口令保护时,服务器端会发送401状态码和www-authenticate 响应头,要求客户端使用Authorization来应答

参考链接:https://www.cnblogs.com/hld123/p/10861557.html

2.Content_type是什么?常用哪几种类型?

Content_type是Http的实体首部字段,用于说明请求或返回的消息主体是用何种方式编码,在request header和response header里都存在。

1)、application/x-www-form-urlencoded

浏览器的原生form表单

 提交的数据按照 key1=val1&key2=val2 的方式进行编码,key和val都进行了URL转码

2)、multipart/form-data

常见的 POST 数据提交的方式。我们使用表单上传文件时,必须让 form 的 enctype 等于这个值。

3)、application/json

消息主体是序列化后的 JSON 字符串,这个类型越来越多地被大家所使用

这种方案,可以方便的提交复杂的结构化数据,特别适合 RESTful 的接口。各大抓包工具如 Chrome 自带的开发者工具、Firebug、Fiddler,都会以树形结构展示 JSON 数据,非常友好。

4)、text/xml

是一种使用 HTTP 作为传输协议,XML 作为编码方式的远程调用规范

参考链接:https://www.jianshu.com/p/ba40da728806

3.http协议,tcp协议,Ip协议分别在那一层

HTTP协议、TCP协议、IP协议分别在应用层,传输层,网络层。

4.有哪些协议?

网络层协议:包括:IP协议、ICMP协议、ARP协议、RARP协议。

传输层协议:TCP协议、UDP协议。

应用层协议:FTP、Telnet、SMTP、HTTP、RIP、NFS、DNS。

5.http、https、tcp、udp、websocket协议是什么?

参考链接:https://blog.csdn.net/whb20081815/article/details/67640804

五、百度搜索接口数据驱动自动化实例

步骤一:百度搜索‘postman’

图示 图示

步骤二:使用csv参数化方式搜索多个关键词,全部执行

图示,添加参数 图示,创建txt文本,写入keyword,及其内容 图示,迭代运行,选择文件夹运行 图示,选择文件运行 结果图示

五、微信公众号tag接口自动化

接口例子地址:https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login

第一个接口

复制此接口: https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

第一个接口配置

配置断言:

第一个接口断言 第二个接口 第二个接口设置内容 第二个接口断言 执行结果 关于
上一篇 下一篇

猜你喜欢

热点阅读