PostMan入门使用-02基础

PostMan:用于模拟发送网页http请求
PostMan模拟HttpRequest分为四个部分:URL,method,Headers,body
URL:要请求的URL以及API地址,URL后面的Params用于输入参数,以及对URL中带的参数解析
Headers:输入Header中需要的attribute,有的需要传入token值,需要在header中添加
Method:Post、get、Put、Patch、···,request body随着method的 方法变化。工作中遇到的最多的是post
RequestBody:
a.form-data:form格式传值
b.x-www-form-urlencoded
c.raw:Json或者是XML格式
d.binary:用于传送二进制文件,图片视频、音频
RequestBuild:
Pre-requestScript:定义在发送request之前需要运行的一些脚本,引用场景主要是设置全局变量和环境变量
Tests:定义发送Request之后,需要用脚本检测的内容,也就是TestCase的内容,返回内容是否包含某些字段、返回的时间是否在范围之类


全局变量:用于整个Collections,run整个Collections使用的,设置内容格式 key:username value:admin
环境变量:用于单个项目,可以被请求中引用,例如用户名密码等,设置内容格式 key:username value:admin

开发人员和测试人员使用postman不同:开发人员只需要通过Postsman发送一个请求就OK,看返回值是否正确;测试人员除了这种简单粗暴的使用方式外,还可以使用Post进行自动化测试,当然要先了解一下对应的基本语法了。

PostMan之Test使用:
全局变量:key:username value:admin
环境变量:key:username value:admin
清除全局变量:variable_key 替换 username
postman.clearGlobalVariable("variable_key");
清除环境变量:variable_key 替换 username
postman.clearEnvironmentVariable("variable_key");
添加全局变量:可以在全局变量中看到新加的key-value
postman.setGlobalVariable("variable_key", "variable_value");
添加环境变量:可以在对应的环境变量中看到新加的Key-value
postman.setEnvironmentVariable("variable_key", "variable_value");



responsebody内容如下:
{
    "IsSuccess": false,
    "Content": null,
    "fieldErrors": null,
    "ErrorCode": 0,
    "Msg": "cfgerror-100004",
    "ToKenString": null
}
判断范围内容是否包含字符:string_you_want_to_search 替换你的body返回内容
tests["Body matches string"] = responseBody.has("string_you_want_to_search");
转换返回内容XML格式到Json格式:
var jsonObject = xml2Json(responseBody);
判断返回内容是否等于对应的字符:response_body_string 替换
tests["Body is correct"] = responseBody === "response_body_string";
判断返回内容的Json中的Key是否等于对应的值:value替换返回内容的Json中的key,100替换Json中的Value;例如 "Msg"(value): "cfgerror-100004"(100)
var jsonData = JSON.parse(responseBody);
tests["Your test name"] = jsonData.value === 100;
var jsonData = JSON.parse(responseBody);
tests["Your test name"] = jsonData.Msg === "cfgerror-100004";
判断返回的Header中是否有大小写区分:
tests["Content-Type is present"] = postman.getResponseHeader("Content-Type");
判断返回的时间:200可以替换自己对应的产品要求的最大返回时间
tests["Response time is less than 200ms"] = responseTime < 200;
判断返回的statuscode:200可以替换其他code
tests["Status code is 200"] = responseCode.code === 200;
判断返回的statuscode的名称是否包含某个string:Created替换对应的测试string
tests["Status code name has string"] = responseCode.name.has("Created");
判断返回成功code的值:201、202 可以替换测试code,可以多个条件
tests["Successful POST request"] = responseCode.code === 201 || responseCode.code === 202;

tests["Successful POST request"] = responseCode.code === 201 || responseCode.code === 202|| responseCode.code === 200;

PostMan入门使用-02基础