1、在选择参数方法,我的post,输入链接和在链接后面加参数,params自动填入参数。 2、可以打开控制台查看发送请求的信息和返回的结果,并选择返回的数据类型以什么格式查看 3、查看所发送请求的信息和请求返回的信息,断言等。 4、get请求,可以直接在链接后面加参数 5、post请求上传文件,选择form-data,选择file后选择文件(既可以上传键值对,也可以上传文件。当上传的字段是文件时,会有Content-Type来表名文件类型;content-disposition; 由于有boundary隔离,所以multipart/form-data既可以上传文件,也可以上传键值对,它采用了键值对的方式,所以可以上传多个文件。) 6、x-www-form-urlencoded(表单内的数据转换为键值对,比如,name=王可以&keyword=2424) 7、传递json参数,可以用form-data、x-www-form-urlencoded或者raw x-www-form-urlencoded raw 8、binary 相当于Content-Type:application/octet-stream,从字面意思得知,只可以上传二进制数据,通常用来上传文件,由于没有键值,所以,一次只能上传一个文件。 10、pre-request Script 发送请求前做数据处理,用js格式,如对密码进行两次md5加密后赋值给环境变量。 11、设置断言、检查点。 12、查看断言、检查点是否通过 13、常用断言、检查点 14、例子
{ // "json1": { // "avatar_large": "https://cdn.v2ex.com/navatar/8613/985e/90_large.png?m=1591420019", // "name": "python", // "avatar_normal": "https://cdn.v2ex.com/navatar/8613/985e/90_normal.png?m=1591420019", // "title": "Python", // "url": "https://www.v2ex.com/go/python", // "topics": 13239, // "footer": "", // "header": "这里讨论各种 Python 语言编程话题,也包括 Django,Tornado 等框架的讨论。这里是一个能够帮助你解决实际问题的地方。", // "title_alternative": "Python", // "avatar_mini": "https://cdn.v2ex.com/navatar/8613/985e/90_mini.png?m=1591420019", // "stars": 9086, // "aliases": [], // "root": false, // "id": 90, // "parent_node_name": "programming" // }, // "json2": { // "status": 1, // "message": "success", // "data": [ // { // "id": 1, // "title": "乡愁", // "author": "余光中", // "content": "小时候,乡愁是一枚小小的邮票,我在这头,母亲在那头。长大后,乡愁是一张窄窄的船票,我在这头,新娘在那头" // }, // { // "id": 5, // "title": "乡愁", // "author": "余光中", // "content": "小时候,乡愁是一枚小小的邮票,我在这头,母亲在那头。长大后,乡愁是一张窄窄的船票,我在这头,新娘在那头" // } // ] // } // } var jsonData=JSON.parse(responseBody); console.log(jsonData.json1); console.log(jsonData.json1.avatar_large); console.log(jsonData.json2.data[0].id); tests["多级json的id是否:"]=jsonData.json2.data[0].id===1; // tests["多级json的id是:"]=jsonData.json2.data[0].id.to.eq(1); pm.test("另一种判断方法",function(){ pm.expect(jsonData.json2.data[0].id).to.eq(1); }); //设置环境变量 pm.environment.set("json1",JSON.stringify(jsonData.json1)); //获取环境变量 console.log(pm.environment.get("json1")); // pm.environment.get("variable_key"); //获取一个环境变量(其值是一个字符串化的对象) var array=JSON.parse(pm.environment.get("json1")); console.log("输出"); console.log(array); //清除一个环境变量 pm.environment.unset("json1"); pm.globals.set("testjson",jsonData.json1);//设置全局变量 pm.globals.get("testjson");//获取全局变量 pm.globals.unset("testjson");//清除全局变量 //在活动变量和全局变量中搜索变量 pm.variables.get("testjson"); pm.test("Body matches string",function(){ pm.expect(pm.response.text()).to.include("string_you_want_to_search"); }); pm.test("检查响应主体是否等于一个字符串",function(){ pm.response.to.have.body("response_body_string"); }); //检查json值 pm.test("你的名称",function(){ var json3=pm.response.json(); console.log("你的"+json3.json1.id); pm.expect(json3.json1.id).to.eq(100); }); pm.test("内容类型的存在",function(){ pm.response.to.have.header("Content-Type"); }); //响应时间小于200ms pm.test("response time is less than 200ms",function(){ pm.expect(pm.response.responseTime).to.be.below(200); }); //成功的POST请求状态码 pm.test("成功的状态请求",function(){ pm.expect(pm.response.code).to.be.oneOf([201,202]); }); var schema = { "items": { "type": "boolean" } }; var data1 = [true, false]; var data2 = [true, 123]; pm.test('Schema is valid', function() { pm.expect(tv4.validate(data1, schema)).to.be.true; pm.expect(tv4.validate(data2, schema)).to.be.true; }); //解码base64编码的数据 //(发送异步请求) //该功能既可以作为预先请求,也可以作为测试脚本使用。 pm.sendRequest("https://postman-echo.com/get", function (err, response) { console.log(response.json()); }); //将XML正文转换为JSON对象) var jsonObject = xml2Json(responseBody);15、pre-requestscript 查看结果 15、collection runner 查看运行结果 天天开心,日日快乐,祝大家!