3天精通Postman—基础应用&接口测试流程&接口架构和协议

DAY1课题:Postman基础应用&接口测试流程&接口架构和协议

目录

一、什么是接口?

二、接口协议的全局观

三、http协议详解

四、返回数据 

五、接口测试流程和方案

四、微信公众号的接口

五、Postman安装和界面的介绍

六、Postman接口测试发送get请求

七、微信公众平台生产环境 例子:

获取接口统一鉴权码token接口

 创建的标签接口

 获取公众号已创建的接口

 删除标签接口

编辑标签接

一、什么是接口?

内部接口:开发人员自己开发的给被测系统调用的接口。

1.提供给内部系统使用(接口不公开,只测正例)

2.提供给外部系统使用(接口公开,测试正例,反例,鉴权…..)

外部接口:系统调用外部的已经存在的接口。(只测正例)

二、接口协议的全局观

1.基于SOAP架构。协议:webservice,数据通过xml交互。

测试工具:soupui

2.基于RPC架构,协议:dubbo,thrift,RMI,数据通过json交互。

springcloud微服务。

测试工具:jmeter

3.基于restful架构,协议:http协议。数据通过json交互。

测试工具:postman

三、http协议详解

1.什么是http协议

http协议是一种超文本传输协议,主要用于客户端和服务器之间交互数据。交互分为请求和

请求:请求行,请求头,空一行,请求正文(报文,数据)

响应:响应行,响应头,空一行,响应正文(报文)

请求行:请求方式,请求路径,协议

GET
http
:
//
47.107.116.139
/
fangwei
/
m
.
php
?
m
=
Public
&
a
=
login
&
HTTP
/
1.1

核心请求头:

Accept
:客户端接收的数据格式。

Content

type
:
发送请求的数据格式。

        application
/
x

www

form

urlencoded
表单。

        application
/
json                                  json

        multipart

form                                    文件上传

User

Agent
:客户端的类型

        谷歌,火狐,
IE
,
Postman

Jmeter
、、、、

X

Requested

With   
异步请求(一般应用于登录或者局部刷新,
ajax
技术)

Cookie
:
Cookie
信息。

空一行

请求正文

响应行:协议,响应码
(
1
XX
信息,
2
XX
成功
,
3
XX
重定向,
4
XX
客户端错误,
5
XX
服务器错


)
,响应信息

HTTP
/
1.1 200 OK

响应头

Server
:
nginx

Date
:
Sun
,
07
Nov
2021 12
:
22
:
30 GMT

Content

Type
:
text
/
html
;
charset
=
utf

8

Connection
:
keep

alive

Vary
:
Accept

Encoding

X

Powered

By
:
PHP
/
5.6.36

Set

Cookie
:
PHPSESSID
=
iuf17a5nlq98rcgfj126vfll06
;
path
=/
;
HttpOnly

Expires
:
Thu
,
19
Nov
1981 08
:
52
:
00 GMT

Cache

Control
:
no

store
,
no

cache
,
must

revalidate
,
post

check
=
0
,
pre

ch

eck
=
0

Pragma
:
no

cache

Content

Length
:
3052

空一行

响应正文

 
<!
DOCTYPE
html
PUBLIC
"‐//W3C//DTD XHTML 1.0 Transitional//EN"

四、返回数据 

主要 html,json,xml 这三种。

json:数据格式。(字符串,字典的字符串的形式。),由两类数据组成。

1.键值对,{key:value,key2:value2}

2.数组(列表):[arr1,arr2,arr3]

dict,json,yaml可以相互转换。

不成文的规定:一般接口返回的数据按如下格式开发:

{code:返回码,message:返回信息,result:返回数据}

五、接口测试流程和方案

1.拿到api文档,(规范:swgger,showdoc,不规范:word,excel,没有就只能抓包和录 制),熟悉接口业务,接口地址,鉴权方式,入参,出参,错误码等等。

2.编写接口测试用例以及评审。

思路:

先写正例:输入正确的入参,接口返回成功。(多种请求方式的情况下有多个正例。)

再写反例:(应用功能测试思路)

鉴权反例:必填,错误,过期….

参数反例:必填,类型异常,长度异常。

其他反例:错误码,黑名单,次数调用限制,分页场景(负数页,0页,中间页,最后

一页,超出最后一页。)

3.使用接口测试工具执行接口测试

4.输出接口测试报告(word文档类型,HTML类型)

四、微信公众号的接口

微信公众平台  点击 开发文档 =》测试号申请 

获取测试号信息 appID:XXX  appsecret:XXX。

postman+newman+git+jenkins

Jmeter+ant+Git+Jenkins

soupui,apipost,

fiddler,charles

五、Postman安装和界面的介绍

最新的版本是9.0,稳定版是8.0

官方:
https://dl.pstmn.io/download/latest/win64

接口测试核心填写的就四个部分:

1.请求方式,请求路径,请求数据,请求头。

鉴权码:鉴定你是否有访问接口的权限。
csrf_token.access_token
,key,token,appkey

获取方式:

1.通过一个独立的接口获取。

2.登录之后自动生成。

六、Postman接口测试发送get请求

请求页签的详细说明:

params:get请求传参,(或者如果post或其他请求路径中有参数那么也会自动填充到

params)

Authorization:鉴权方式。

headers:传请求头

Body:post请求传参。

form-data:可以传文件也可以传表单键值对。

x-www-form-urlencoded:只能传表单键值对。

raw:json,text,html,javascript,xml

binary:二进制文件上传。

Pre-request-Script:请求之前的脚本。

tests:请求之后的断言(判断预期是否与实际一致)

setting:设置

cookie:是postman工具自动的保存以及发送cookie。

响应页签的详细说明:

Body:返回的数据,Pretty以json./…格式,Raw文本,Preview网页

Cookie:响应的Cookie

headers:响应头

Test Results 断言的测试结果

200:状态码

OK:响应信息

388MS响应时间

面试题:get请求和post请求的区别?

1.get一般是获取数据,post一般提交数据。

2.post比get安全

3.本质区别在于:传参方式不一样。

get在地址栏的后面以?方式传参,多个参数之间用&分隔。

post是在body以表单的方式传参。

七、微信公众平台生产环境 例子:

先设置基础url

获取接口统一鉴权码token接口

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

 创建的标签接口

https://api.weixin.qq.com/cgi-bin/tags/create?access_token=ACCESSTOKEN

 获取公众号已创建的接口

https://api.weixin.qq.com/cgi-bin/tags/get?access_token=ACCESSTOKEN

 删除标签接口

https://api.weixin.qq.com/cgi-bin/tags/delete?access_token=ACCESSTOKEN

编辑标签接口

https://api.weixin.qq.com/cgi-bin/tags/update?access_token=ACCESSTOKEN

​ 

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注