💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
[toc] # Swagger Compliance Assertion Swagger 合规断言通过特定的规范来验证响应值。断言支持下列规范: - Swagger 2.0 (也称为 OpenAPI 2.0) - OpenAPI 3.0.0 ## 适用场景 Swagger 合规断言仅适用于 [SoapUI](SoapUI.md) ,可在 [REST Request](RESTRequest.md) 测试步骤中使用该断言。 ## 创建断言 ![](https://support.smartbear.com/readyapi/docs/_images/testing/assertions/reference/create-soap.png) 1、在对话框左侧,选择 **Compliance, Status and Standards** 。 2、在对话框右侧,选择 **Swagger Compliance** 。 3、点击 **Add** 。 ## 设置断言 1、在 **Swagger URL** 文本框,输入期望的 OpenAPI 或 Swagger 定义的 URL 或文件名。如果输入的 URL 需要身份验证,请输入凭证。 ![](https://support.smartbear.com/readyapi/docs/_images/testing/assertions/reference/compliance/swagger-compliance.png) 2、当你启用 **Strict Mode** 选项时,如果定义中不包含匹配的返回值,断言将失败。当你禁用该选项时,如果响应码不在定义中,断言结果为通过。 ## 工作原理 1、断言是如何工作的: (1)首先,断言得到一个 response code 。然后在定义中搜索相应的 status code ,并检查 response 是否有正确的 `content-type` 。 如果定义规定了 response body,断言将验证 response body 是否与规定的 schema 一致。 (2)(只针对开放的 3.0.0 版本)如果 response status code 没有被定义,断言将比对 response 和 `default` response 。 >[info]当前,该断言不支持 response 范围校验。 (3)默认情况下,如果找不到匹配的 HTTP status code ,断言将通过。如果你想在这种情况下使断言失败,请启用 **Strict Mode** 选项。 2、当断言首次运行时,ReadyAPI 会将定义加载到内部缓存中。在接下来的运行期间,断言将使用该定义的缓存来校验。在退出 ReadyAPI 后,缓存将被清除。 **参考资料** [1、ReadyAPI Documentation / Testing APIs / Verifying Results / Assertion Reference / Compliance Assertions / Swagger Compliance Assertion](https://support.smartbear.com/readyapi/docs/testing/assertions/reference/compliance/swagger.html) :-: --- 贡献者名单(排名不分先后) --- :-: **材料** :-: **编写** 苏娟 :-: **校验** 李云 :-: **支持**