zoukankan      html  css  js  c++  java
  • 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, 却忘记修改, 当发送请
    求后获取到的响应数据肯定不是预期的结果, 这时断⾔就会出错. 应当仔细检查请求的正确性. 请求的正
    确性可以从以下这⼏个⽅⾯考虑->(请求⽅法, 请求地址, 请求头信息, 请求体)
     
    # 注意:
     当断⾔出现错误, 经过⼀系列的排查依然不⾏, 该怎么办呢? 这是我们可以保存原有断⾔错误的请求,
    重新建⽴请求, 不要受前⼀个请求的思维影响, ⼀步⼀步的构建请求, 再次尝试
    坚持,坚持,坚持…… 在你选择不放弃的那一刻, 成功其实已经在向你走近 我们无法得知什么时候会来临 但我们可以选择用自强的双手敲开幸福的门。
  • 相关阅读:
    Unity The Method Signature Matching Rule
    Unity The Property Matching Rule
    Unity The Type Matching Rule
    Unity The Custom Attribute Matching Rule
    Unity The Member Name Matching Rule
    Unity No Policies
    Unity The Return Type Matching Rule
    Unity The Parameter Type Matching Rule
    Unity The Namespace Matching Rule
    关于TSQL递归查询的(转)
  • 原文地址:https://www.cnblogs.com/bronyaa/p/14897180.html
Copyright © 2011-2022 走看看