我正在使用 Cypress.io 框架,我想实现名为 chai-openapi-response-validator 的 chai 插件,其中包含一个名为 SaturationApiSpec 的新断言
我尝试安装插件并将其添加到plugins/index.js 文件中,但 cypress 测试中的断言失败并出现错误:Invalid Chai property: SaturationApiSpec
是否有另一种方法来添加此插件,以便 cypress / chai 将学习新的断言?
您可以将其添加到规格的顶部,或者添加到所有规格的
cypress/support/index.js
中。
cypress/plugins
适用于节点插件,但浏览器端插件可以直接导入到specs或support/index.js中。
const chai = require('chai');
const chaiResponseValidator = require('chai-openapi-response-validator').;
chai.use(chaiResponseValidator('path/to/openapi.yml'));
解决此 chai 插件的 fs.read() 问题
来自 npm:chai-openapi-response-validator
加载您的 OpenAPI 规范(3 种不同的方式):
- 来自物体:
// Load that OpenAPI object into this plugin chai.use(chaiResponseValidator(openApiSpec));
因此您可以在初始化插件之前需要该对象
const chai = require('chai');
const chaiResponseValidator = require('chai-openapi-response-validator');
const openApiSpec = require('path/to/openapi.yml');
chai.use(chaiResponseValidator(openApiSpec));
另一种选择 - 查看 cy-spok 来验证 API 响应。
链接视频以截取方式显示实际效果。