学习记录:postman基础用法

postman

接口测试用例写法

用例编号 测试点 前置条件 请求方法 请求地址 请求参数 预期结果 实际结果

搭建环境:

下载java环境:https://www.java.com/zh-CN/
下载postman:https://www.postman.com/

运行java包
cmd:E:
cmd运行java包命令:java -jar XXX.jar

在这里插入图片描述
在这里插入图片描述
设置集合变量
在这里插入图片描述
环境变量,全局变量

在这里插入图片描述
集合变量、环境变量和全局变量的作用范围
集合变量:作用范围在整个集合
环境变量:作用范围在当前使用的环境
全局变量:在所有集合所有环境中都可以使用

当集合变量、环境变量和全局变量的名字冲突的时候,postman是如何取值的
当集合变量和环境变量和全局变量冲突的时候 优先使用环境变量
当集合变量和全局变量冲突的时候 优先使用集合变量

Pre-request Script 预处理脚本的使用

# Get an environment variable 获取一个环境变量的值
var res = pm.environment.get("pcode");
console.log(res);

# Get a global variable 获取一个全局变量的值
var res = pm.globals.get("name");
console.log(res);
# Set an environment variable 设置一个环境变量 set("变量名","变量值");
pm.environment.set("name", "123");

# Set a global variable 设置一个全局变量 set("变量名","变量值");
pm.globals.set("test", "233");
#Clear an environment variable 清除一个环境变量
pm.environment.unset("name");

#Clear a global variable 清除一个全局变量
pm.globals.unset("test");
#Send a request 提交一个请求
pm.sendRequest("https://postman-echo.com/get", function (err, response) {
    
    
    console.log(response.json());
});

PS:填好路径后,点击send发起请求, 左下角查看console控制台输出结果
接口类型:post
接口路径:localhost:8085/pub/api/Jlogin
JSON参数:

{
    "name":"anna小姐姐",
    "password":"xdclass",
    "pcode":"xdclass"
}

Tests常用的断言测试脚本

#Status code:Code is 200
pm.test("校验状态码是否为:200", function () {
    
    
    pm.response.to.have.status(200);

#Response body:Contains string
pm.test("校验body里面存在:anna小姐姐", function () {
    
    
    pm.expect(pm.response.text()).to.include("anna小姐姐");
});
});

#Response body:JSON value check
pm.test("校验测试用例中json code的值", function () {
    
    
    var jsonData = pm.response.json();
    pm.expect(jsonData.code).to.eql(0);
});

#Response body:JSON value check
pm.test("校验测试用例中的json data字典里的值", function () {
    
    
    var jsonData = pm.response.json();
    pm.expect(jsonData.data.age).to.eql(20);
});

#Response body:Is equal to a string
pm.test("校验测试用例响应体全等某个字符", function () {
    
    
    pm.response.to.have.body({
    
    
    "msg": "恭喜你  登陆成功",
    "code": 0,
    "data": {
    
    
        "city": "中国",
        "identity": "学员",
        "sex": "女",
        "name": "anna小姐姐",
        "age": 20
    }
});
});

#Response headers:Content-Type header check
pm.test("校验响应的头信息是否包含某个值", function () {
    
    
    pm.response.to.have.header("Content-Type");
});

#Response time is less than 200ms 
pm.test("校验影响的时长", function () {
    
    
    pm.expect(pm.response.responseTime).to.be.below(40);
});

#Status code:Successful POST requset
pm.test("是否包含响应状态码", function () {
    
    
    pm.expect(pm.response.code).to.be.oneOf([201, 202, 200]);
});

#Status code:Code name has string
pm.test("如果响应码包含某个字符串的话,就执行成功", function () {
    
    
    pm.response.to.have.status("OK");
});

ps:查看 Test Results 断言结果

通过预处理脚本创建参数,并且传参
在这里插入图片描述在这里插入图片描述获取请求中的响应参数:token
在这里插入图片描述在这里插入图片描述

Runner

在这里插入图片描述PS:Save responses保存响应头和参数
在这里插入图片描述Runner导入外部文件的使用
在这里插入图片描述postman参数读取文本参数
在这里插入图片描述PS:注意,txt文本和CSV的都要是UTF-8 不然会有乱码

postman生成接口文档
在这里插入图片描述PS:这个功能需要登录postman账号

猜你喜欢

转载自blog.csdn.net/qq_26086231/article/details/112428047