10.Postman 运行collection(运行时使用环境变量、全局变量、data数据)

Postman 运行collection

Postman中文文档——使用数据文件(Working with data files)

https://www.jianshu.com/p/9babfa0cbee2

  1. 初始化接口请求
  1. 接口请求地址已设置好变量:

https://www.v2ex.com/api/nodes/show.json?name={{node_name}}

  1. 变量node_name:已设置环境变量和全局变量
  2. 断言:在tests编辑两个断言,一个是状态码200,一个是响应数据的name字段=变量node_name的值

 

  1. 接口请求保存到collection里面
  1. 点击save按钮,打开保存页面
  2. 编辑请求的名称和描述
  3. 创建新的collection文件夹(也可以选择已有的文件夹)
  4. 创建collection后,选择该collection
  5. 点击save to  XXX(collection名称)

Collection保存成功后,可以在postman-collection面板上找到,如下图:

 

 

运行collection

1.运行界面文字说明

运行界面部分功能说明:

Iterations:运行几次

Delay:每轮运行的间隔时间,默认0ms

Log response :请求日志,保持默认 fror all requests(所有的请求都记录日志)

Data:选择测试数据

Run v2ex:运行名称为“v2ex”的collection

2.变量使用环境变量时运行

对应的tests断言内的node_name要设置成获取环境变量,断言才会通过

运行collection时选择环境变量(环境变量node_name=python):

运行结果:

运行结果2个断言都通过

  1. 变量使用全局变量时运行

对应的tests断言内的node_name要设置成获取全局变量,断言才会通过

运行collection时选择no environment(此时默认是使用全局变量node_name=php)

运行结果:

 

 

 

3.数据data驱动测试

Data数据文件常用格式:json、csv、txt三种格式,一般常用json格式

Json格式数据文件编写:

格式:[{“变量名1”:” 变量名1的值”},{“变量名2”:” 变量名2的值”}]

文件格式:文件名.json

运行collection时选择no environment,然后选择data文件,如下图:

 

运行结果:

总结说明:

断言部分跟 Postman 隔离开的,在断言部分不能直接获取 Postman 中的变量值,运行是会提示变量未定义,此时需要使用pm.environment.get("变量")、pm.globals.get("变量 ")、data["变量"]来获取postman里面的变量值

 

常见错误:

  1. 变量未定义:

使用data数据运行时,tests的断言要记得从postman的data数据内获取,语法:变量名=data[“测试数据文件内的变量名称”],否则会出现node_name未定义而运行失败的情况,如下图:

  1. 变量获取错误

Tests断言使用从postman的环境变量取值,而运行collection时选择no environment(使用全局变量),导致变量值与实际运行结果的值不一致,运行结果fail

 

猜你喜欢

转载自blog.csdn.net/Teamo_mc/article/details/88074266