目录
(我的公众号“墨石测试攻略”,分享测试经验,欢迎关注!)
什么是断言:
断言:postman在发送请求后,需要对返回的结果做判断,验证是否符合预期,这就是断言。
如何设置断言:
postman中通过Tests页签编写断言,断言在请求返回之后显示,断言的结果显示在Test Results中。
步骤:1、选择需要添加断言的接口,在请求栏点击“Tests”页签,断言使用JavaScript编写。也可以在右侧常用的断言中选择你想要的断言,点击后即显示在Tests中。
2、点击【Send】,发送请求,在响应栏的“Tests Results”页签可查看断言结果PASS/FAIL。
预期=实际:PASS
预期≠实际:FAIL
备注:我们在运行Collection的时候,也需要对每个接口添加断言,断言结果会显示在每个接口下面:
常用的断言:
1、响应状态码断言
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});
//或者
tests["Status code is 200"] = responseCode.code == 200;
说明:用于判断响应的状态码是否符合预期。
下面示例中这段代码的意思是,如果响应的状态码为200,那么这个接口测试通过,运行结果中显示Status code is 200。实际测试过程中,根据你的实际情况修改这里的状态码和提示信息。
2、验证响应中是否含有指定字符串
pm.test("Body matches string", function () {
pm.expect(pm.response.text()).to.include("string_you_want_to_search");
});
//或者
tests["Body matches string "] =responseBody.has("string_you_want_to_search ");
说明:用于判断返回的内容中是否含有指定的字符串。如下图,如果返回的内容中含有字符error,那么这个接口测试通过。
3、设置、获取环境变量/全局变量的值
pm.environment.set("variable_key", "variable_value");//设置环境变量及变量值
pm.environment.get("variable_key");//获取环境变量
说明:使用这个断言的前提是postman中已经设置了环境变量,这里的variable_key为环境变量的名称,variable_key为变量值。全局变量与环境变量类似。
使用示例如下图,意思是先设置环境变量eq,并取equipmentid的值,然后获取eq,如果eq=101,那么测试通过。
4****、验证响应结果返回的时间是否在指定范围
pm.test("Response time is less than 200ms", function () {
pm.expect(pm.response.responseTime).to.be.below(200);
});
说明:用于判断这个接口响应的时长是否在指定的范围。如下图,实际响应时长为13ms,断言要求5ms,不在这个范围,因此报FAIL
5、对返回的结果做Json字段检查
pm.test("Your test name", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.value).to.eql(100);
});
说明:用于判断返回结果的Json中指定的字段值是否正确。
如下图中,当返回的结果中equipmentid=101时,测试通过。
希望我的分享能帮助到你,我的公众号“墨石测试攻略”,持续更新软件测试方面的知识技能,欢迎关注。
版权归原作者 墨石测试攻略 所有, 如有侵权,请联系我们删除。