Postman练习

1、互联网产品一般需要在Headers中填写:

user-agent
referer
content-type
cookie

2、互联网公司中:会自定义相关项目的请求头

3、结果出现400 BAD REQUEST有两种可能:

      1)请求头不对
      2)请求参数不对

4、我们在工作中,平常接口测试测试的服务,都是后端程序员写的
      1)常规的接口(公司里面产品的接口)
      2)open api :开放平台的API (把接口开放出去,提供给第三方的公司使用)

5、HTTP GET

参数是在postman中的params下的query parsms

6、

7、在postman里面,编写断言使用的语言是:javascript,简称JS,编写的地方是在测试用例的tests区域

Postman练习

 

获得国内手机号码归属地省份、地区和手机卡类型信息输入参数:

mobileCode = 字符串(手机号码,最少前7位数字),

userID = 字符串(商业用户ID) 免费用户为空字符串;

返回数据:字符串(手机号码:省份 城市 手机卡类型)

1、针对xml的数据格式

首先需要得到相关请求和响应的内容,在Postman中输入信息,Headers和Body中分别输入相关信息,点击Send

 

 

2、针对get的请求

依据请求与响应内容输入,?后内容可在Paramas输入,Send确认得到响应数据

 

 

 

3、针对表单的数据格式

在Postman选择请求方式为“POST”,填写地址信息,请求头与Body输入需要的内容确认

 

 

 

 

二、postman的基本设置

1、APP实战

示例:钉钉开放平台:https://open.dingtalk.com/document/orgapp-server/queries-a-user-attendance-group

 

 

 

2、postman的集合(collection)

Collection的目的:把所有的测试用例组织起来,并且一次性的执行,得到测试报告

 

 

 

测试套件:是测试用例的集合,在一个测试套件里面,有很多个测试用例,
                  每一个独立的请求在测试里面,都叫测试用例 testcase

 

 

 

三、API测试用例的验证(断言)

1、postman工作里面有两个场景:   

1)就是平常使用的
2)使用postman测试工具来做API自动化测试
        测试用例需要加“断言”,来验证测试用例它的结果的准确性

2、在postman里编写断言使用的语言是:javascript

简称JS(JS:熟悉,精通的),编写的地方是在测试用例的tests区域

3、编程语言里面的注释等价于word文档里面的备注

4、验证api测试用例,必须三个维度来验证,三个关系是并且的关系
    1)协议状态码
    2)业务状态码
    3)响应数据

 

 5、断言实战

以GET为例,请求地址:http://101.43.158.84:5000/login

1)创建一个新的集合,添加一个接口测试在这个集合中,输入请求头和请求地址,确认响应数据

 

 2)编写断言前,先定义变量(通过var定义),以此来存储服务端的响应数据(固定格式为JSON.parse(responseBody)),之后通过console.log(变量)来输出返回的数据

 

 3)验证返回的响应数据的值,如:tests["xx对应的值是ww”]=变量.xx==ww,点击发送,确认响应信息

 

 4)验证协议状态码,点击Test中的status code:code is 200

 

 5)点击Send,查看响应信息

 

 6)点击右上方Save保存,运行建立的集合,得到通过结果

四、动态参数的解决思路(关联)

token请求

 

 

1、在postman中调用变量名称,使用的是{{}}

2、动态参数(关联),或者也可以说:上个接口的输出是下个输出的输入
   1)http://101.43.158.84:5000/auth输出了响应数据access_token
   2)该access_token是接口http://101.43.158.84:5000/index的输入

3、动态参数(关联)的解决思路:
   1)通过接口http://101.43.158.84:5000/auth,登录成功

   2)登录成功后,在响应数据中返回认证授权
   3)在该http://101.43.158.84:5000/auth的接口的tests中,定义变量获取access_token(授权的令牌)

命令如下:

//定义一个变量来存储服务端返回的响应数据

var jsonData=JSON.parse(responseBody)

console.log(jsonData.access_token)

//定义一个变量,来存储access_token的值
pm.environment.set("token",jsonData.access_token)【点击tests下的set an environment variable进行设置,如下图】

 

 

 

 

 


   4)下来在接口http://101.43.158.84:5000/index的请求中添加请求头,key为Authorization value为:jwt 获取到的授权的令牌,如Authorization:jwt {{token}}

   5)下来执行的顺序必须是:
         先执行登录授权的接口http://101.43.158.84:5000/auth
         再执行http://101.43.158.84:5000/index的接口,这样就能够获取到调用变量的值
   6)必须是在collection中执行,不能单独的执行http://101.43.158.84:5000/index接口,如果单独执行,依然是401,没授权

 

posted @ 2022-01-06 23:08  棠小梨  阅读(293)  评论(0编辑  收藏  举报