• PostMan使用


    页面简单介绍
    参数化
    传入参数格式为json时,无法参数化
    传入参数格式为Params,form-data,x-www-form-urlencoded可以参数化
    第一种,单个值参数化:点击Pre-request Script 输入 脚本 pm.environment.set("variable_key", "variable_value");variable_key为参数名,variable_value为参数的值,例子如下:
    引用的时候,值写成{{variable_key}}
    第二种,批量参数化,比如,以上述图中接口为例,需要一次查询多个手机号是否为已注册用户
    第一步,新建txt文件,使用notepad++编辑,第一行写下参数名,第二行开始,逐行写下参数各值,编码格式设置为UTF-8
    也可以新建一个表格文件,也是第一行写下参数名,第二行开始,逐行写下参数各值,保存文件格式为.csv
    点击该接口所在Collections右边的右箭头,如下图
    在弹出的界面点击run按钮,进入Collection Runner界面
    在Collection Runner做如下设置,设置完成之后,点击Run按钮就可以看到测试结果
    设置环境变量
    第一种:通过界面设置
    点击” 设置”按钮--manage environments,打开环境设置界面
    在环境设置界面点击Add

    设置完成之后,使用方法如下


    第二种:点击Pre-request Script 输入 脚本 pm.environment.set("variable_key", "variable_value");这里设置的是环境参数,所以可以写成:
    pm.environment.set("ip", "http://172.16.81.142:8082");引用的时候,写成{{ip}}即可

    测试断言
    postman的断言是JavaScript语言编写的,写在tests标签里,tests界面右侧配置了一些常用的代码片段,如下图

    举个栗子,如我们的返回结果为

    {
    "ver": "1.0",
    "ret": true,
    "errcode": 0,
    "data": "当前任务正在执行中, 请不要重复提交"
    }
    现在我们要对data断言,我们点击右侧的代码片段,检查body包含字符串,左侧自动出来一段代码

    【Body matches string】是该条测试的名字,可自行定义,我们改为【校验data字段】;
    【string_you_want_to_search】是我们要校验的字符串,这里我们修改为 当前任务正在执行中, 请不要重复提交
    执行查看结果为pass

    上面只是tests其中一个方法,剩余的简单介绍下:

    清除环境变量
    设置一个全局变量
    得到一个环境变量
    检查response body中是否包含某个string
    检测JSON中的某个值是否等于预期的值
    转换XML body为JSON对象
    检查response body是否与某个string相等
    测试response Headers中的某个元素是否存在(如:Content-Type)
    验证Status code的值
    验证Response time是否小于某个值
    学习一个东西最好的途径就是查看官方文档,这个是官方写的【Test examples】,可以自行学习更深入的断言https://www.getpostman.com/docs/v6/postman/scripts/test_examples

    Jenkins+Postman+Newman之API全自动化测试流程
    http://www.51testing.com/html/75/n-3724975.html

    获取上个接口的返回值(传入参数为json格式不支持)https://blog.csdn.net/weixin_42619964/article/details/82878752
    上个接口,在Tests里面设置返回参数环境变量,用来保存参数的值:
    如: var Jsondata=JSON.parse(responseBody);
    pm.environment.set("返回值中某个参数名",Jsondata.返回值中某个参数名)
    新的接口需要用到这个返回的参数,就{{参数名}}格式来替代值使用

  • 相关阅读:
    【Azure 应用服务】App Service For Windows 环境中部署Python站点后,如何继续访问静态资源文件呢(Serving Static Files)?
    Go语言基础之函数参数
    Go语言基础之函数定义
    Go语言基础之map
    Go语言基础之切片
    Go语言基础之数组
    Go中nil的定义
    复合数据类型介绍
    Go语言基础之流程控制goto
    Go语言基础之流程控制switch分支
  • 原文地址:https://www.cnblogs.com/zhangtebie/p/10939926.html
Copyright © 2020-2023  润新知