2-Postman断言

1.断言是什么?

断⾔, 是让程序判断预期结果与实际结果是否⼀致.简单的来说就是人为的设置一个值,对比接口返回的值和人为设置的值是否一样。

2.Postman断言的特点

  1. Postman的断⾔是使⽤JavaScript语⾔编写的,写在‘Tests’标签⻚⾥
  2. Tests中的脚本在发送请求之后执⾏,会把断⾔的结果(PASS/FAIL)最终在‘TestResults’标签页中展示。

设置断言

我们可以在 SNIPPETS 栏中选择插入一些断言片段,稍作修改就可以供我们灵活使用了!!

点击查看代码
# 断⾔代码⽚段介绍(以下代码均可在postman中找到,我们只需要稍作修改)
1. 判断响应状态码是否等于200 (*****)
 pm.test("Status code is 200", function () {
 pm.response.to.have.status(200);
 });
 
2. 判断响应体中是否包含指定的字符串 (****)
 pm.test("Body matches string", function () {
 pm.expect(pm.response.text()).to.include("string_you_want_to_search"); });
 
3. 判断响应体数据是否等于指定的字符串 (***)
 pm.test("Body is correct", function () {
 pm.response.to.have.body("response_body_string");
 });
 
4. 校验响应的JSON数据 (*****)
 pm.test("Your test name", function () {
 var jsonData = pm.response.json();
 pm.expect(jsonData.mesage).to.eql("ok");
 });
 
5. 判断响应头中是否包含指定的头标签
 pm.test("Content-Type is present", function () {
 pm.response.to.have.header("Content-Type");
 });

常用的几个代码片段:

http请求状态码的断言 Status code : Code is 200
请求体里的数据的断言 Response body : Contains string
json数据的断言 Response body : JSON value check

3.排错技巧

# 1.检查断⾔代码⽚段是否错选了
 当断⾔出现错误时, 我们应⾸先确定⾃⼰的断⾔代码⽚段是否是正确的, ⽐如要判断json数据某个键的
值是否包含另⼀个值, 但却选择了等于.
 
# 2.检查断⾔代码是否设置了错误的字段
 断⾔中对结果的判断要根据响应数据的形式进⾏严格的⽐对, 不细⼼很可能出现错误. ⽐如: json数据
中的⼀个键名为data, 在编写断⾔代码的过程中却写成了date
# 3.发送请求, 基于响应数据做初步预判
 断⾔是对接⼝响应数据的检验, 那断⾔可定是在请求发送后执⾏的. 所以当断⾔出现错误, 这是你⼀定
已经发送了请求, 我们可以打开响应数据进⾏对⽐, 来判断断⾔的执⾏结果是否存在问题.
 
# 4.检查请求相关参数
 在构造请求时, 可能请求出现了错误, ⽐如请求⽅式为post, 但默认为get, 却忘记修改, 当发送请
求后获取到的响应数据肯定不是预期的结果, 这时断⾔就会出错. 应当仔细检查请求的正确性. 请求的正
确性可以从以下这⼏个⽅⾯考虑->(请求⽅法, 请求地址, 请求头信息, 请求体)
 
# 注意:
 当断⾔出现错误, 经过⼀系列的排查依然不⾏, 该怎么办呢? 这是我们可以保存原有断⾔错误的请求,
重新建⽴请求, 不要受前⼀个请求的思维影响, ⼀步⼀步的构建请求, 再次尝试
坚持,坚持,坚持…… 在你选择不放弃的那一刻, 成功其实已经在向你走近 我们无法得知什么时候会来临 但我们可以选择用自强的双手敲开幸福的门。
原文地址:https://www.cnblogs.com/bronyaa/p/14897180.html