1、安装
打开官网链接:https://www.postman.com/,找到适合自己电脑系统的版本,下载,安装
2、发送GET请求
请求方式:GET
请求URL:
请求参数:无
选择GET方式,输入URL,点击Send,状态码200,返回响应数据
请求方式:GET
请求URL:https://httpbin.testing-studio.com/get
请求参数:key(para_key1,para_key2),value(para_value1,para_value2)
选择GET方式,输入URL,点击Send,状态码200,返回JSON数据
3、发送Post
请求方式:Post
请求URL:https://httpbin.testing-studio.com/post
传参方式:使用表单方式进行:选择Body-->form-data
请求参数:key(form_key1,form_key2),value(form_value1,form_value2)
请求方式:Post
请求URL:https://httpbin.testing-studio.com/post
传参方式:使用JSON方式进行:选择Body-->Raw,Text-->JSON
请求参数:{
"json_key1":"json_value1",
"json_key2":"json_value2"
}
请求方式:Post
请求URL:https://httpbin.testing-studio.com/post
传参方式:使用上传文件方式进行:Body-->form-data-->KEY-->File
请求参数:Key(file),Value(1.txt(上传的文件))
头部信息
未添加Headers信息,Content-Type的类型是form-data(参照上图);
添加Headers信息,Content-Type的类型就改变为添加的类型json
4、增加断言
Tests主要用来做断言,比如要测试返回结果是否含有某一字符串,就可以用到Tests
①断言,就是结果和预期对比
②如果一致,用例通过,返回PASS
③如果不一致,用例失败,返回FAIL
比如断言状态码
选择Tests,在SNPPETS下找到Status code:Code is 200,点击后在输入框中自动生成代码:pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});(其中Status code is 200和200是可以自定义的)
点击Send后,可以在Test Results中查看结果
断言字符串
选择Tests,在SNPPETS下找到Response body: Contains string,点击后在输入框中自动生成代码:pm.test("Body matches string", function () {
pm.expect(pm.response.text()).to.include("string_you_want_to_search");
});(其中Body matches string是可以自定义的,string_you_want_to_search是你需要断言的字符串[预期包含的字符串]),
点击Send后,可以在Test Results中查看结果
断言响应中的数据是否正确
选择Tests,在SNPPETS下找到Response body: JSON value check,点击后在输入框中自动生成代码:pm.test("Your test name", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.value).to.eql(100);
});(其中Your test name是可以自定义的,jsonData.value中的value是要改成自己想要断言的数据,例如jsonData.url,则eql(100)需要改成eql("https://httpbin.testing-studio.com/post")),
点击Send后,可以在Test Results中查看结果
断言响应数据中的json
断言响应的头信息中的某些key是否存在
选择Tests,在SNPPETS下找到Response headers: Content-Type header check,点击后在输入框中自动生成代码:
pm.test("Content-Type is present", function () {
pm.response.to.have.header("Content-Type");
});(其中Content-Type is present是可以自定义的,Content-Type为Headers中的key值),
点击Send后,可以在Test Results中查看结果
断言响应时间
选择Tests,在SNPPETS下找到Response time is less than 200ms,点击后在输入框中自动生成代码:
pm.test("Response time is less than 200ms", function () {
pm.expect(pm.response.responseTime).to.be.below(200);
});(其中Response time is less than 200ms是可以自定义的,below(200)中的200为响应时间,单位为ms),
点击Send后,可以在Test Results中查看结果
5、变量
①环境变量与全局变量
②变量引用方法:{{variableName}}
创建环境变量:
设置完成后点击Save保存
使用变量{{url}}
前置脚本设置变量
选择Pre-request Script
pm.environment.unset("url");//清空URL
//pm.environment.set("variable_key", "variable_value");
//右边选择Set an environment variable,variable_key设置为{{url}},variable_value设置为请求的url
pm.environment.set("url", "http://www.baidu.com");执行send后,环境变量中的url值也会被更改掉
6、添加cookie
①cookie可以用来鉴权
②Postman可以自动保存Cookie信息
设置参数,发送请求,查看响应数据,Cookies中会保存Cookie信息
7、参数传递