质量保证金 |如何在 QAF 版本 3.0.1 中停止 API 断言的屏幕截图

QAF | How to stop screenshot for API assertion in QAF version 3.0.1

目前我是 Web 场景包的 运行 API 场景部分。当 API 场景失败时(例如,断言响应状态),我可以在 QAF 报告中看到失败附带的浏览器屏幕截图。屏幕截图是从另一个场景中打开的浏览器中截取的。 从 QAF 版本 3.0.0 升级到 3.0.1 后,我注意到了这个问题。不知道是不是QAF框架issue/bug还是我这里做错了。

如果这是一个已知的 QAF 问题,任何临时 hack 都会很有帮助。

以下是来自 QAF 的测试结果片段 JSON:

 {
      "message": "And I assert api response status code is \"200\"",
      "type": "TestStepFail",
      "screenshot": "../img/IQT25_61ae18f7ea70ae94a2fd4fff_API_SC_1fqpasxi7oxor25901.png",
      "duration": 582,
      "threshold": 0,
      "subCheckPoints": [
        {
          "message": "Response Status\nExpected: <200>\n     Actual: was <301>",
          "type": "Fail",
          "screenshot": "../img/IQT25_61ae18f7ea70ae94a2fd4fff_API_SC_wd7gsvcac7ov25900.png",
          "duration": 0,
          "threshold": 0,
          "subCheckPoints": []
        },
        {
          "message": "Response Status",
          "type": "Fail",
          "screenshot": null,
          "duration": 0,
          "threshold": 0,
          "subCheckPoints": []
        }
      ]
    }

根据设计,如果有活动的浏览器会话,qaf 将根据 selenium.failure.screenshotsselenium.success.screenshots properties 值捕获屏幕截图。在您的情况下,很可能是因为在按照报告中所附的设计屏幕截图执行 Web 服务步骤时打开了浏览器。

然而,对于使用 qaf 版本 3.0.03.0.1 的相同测试,它应该具有相同的行为。如果您发现同一个 test/suite 对于不同版本的 qaf(3.0.03.0.1)有不同的行为,应该向 qaf 项目问题跟踪器报告。