以添加会议室接口为例,测试异常场景
测试数据
| token | name | capacity |
|---|---|---|
| 30个字符 | 10 | |
| 错误的token | 30个字符 | 10 |
| 正确的token | 0个字符 | 10 |
| 正确的token | 31个字符 | 10 |
| 正确的token | 30个字符 | 0 |
添加对应的期望结果
动态设置token值
token值因为有时间的限制,
所以需要根据接口中需要动态设置token,在prerequest 中设置
// 运行之前根据csv文件中的定义,动态设置 token 值以及name值// 1. 先获取到csv文件中的定义var csv_token = pm.variables.get("token");if (csv_token == ""){var error_token = "";// 更新变量token的值pm.globals.set("newtoken", error_token);}// 如果csv文件中定义的是错误的token 这里要准备一个错误的token值 使用代码准备if (csv_token == "错误的token"){var error_token = "xxxxxxyyyyxyxyxyx";// 更新变量token的值pm.globals.set("newtoken", error_token);}if(csv_token == "正确的token"){// 设置正确的token// 先去获取tokenvar tokenurl = "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ww88fc20d87e4cdfa1&corpsecret=8kZYaPdkie4nuh3itIwhgUKpam5Xyoq5hU4uivaswp4"// 使用代码的方式发送请求 获取token值 设置为变量pm.sendRequest(tokenurl, function (err, response) {// 服务器返回var jsondata = response.json();pm.globals.set("newtoken", jsondata["access_token"]);});}
断言
从csv文件中提取变量值设置断言
// 获取csv文件中定义的变量const errcode = pm.variables.get("errcode");const errmsg = pm.variables.get("errmsg");pm.test("errcode值为"+errcode, function () {var jsonData = pm.response.json();pm.expect(jsonData["errcode"]).to.eql(errcode);});pm.test("errmsg值包含"+errmsg, function () {var jsonData = pm.response.json();pm.expect(jsonData["errmsg"].indexOf(errmsg)>=0)});
批量执行。
