chai.use(chaiHttp);一次还是在每个测试文件中?



将Chai HTTP (https://www.chaijs.com/plugins/chai-http/(添加到节点项目测试中。

使用该插件(如文档中所示(使用:

var chai = require('chai')
, chaiHttp = require('chai-http');
chai.use(chaiHttp);

我想知道我是否需要在我使用chaiHttp的每个测试文件中添加chai.use(chaiHttp);? 或者我可以在其中一项测试中设置 chaiHttp 一次?

它可以在公共文件中吗?

mochav8.2.0 开始,您可以使用 https://mochajs.org/#global-fixtures。

全球赛程:

保证执行一次

且仅执行一次

您可以使用测试夹具决策树向导的东西。

此流程图将帮助您决定应该使用哪些钩子、根钩子插件或全局夹具。

知道这一点后,这里有一个例子:

a.test.js

const chai = require('chai');
const { expect } = chai;
describe('a', () => {
it('should pass', () => {
expect(chai.request).to.be.a('function');
});
});

b.test.js

const chai = require('chai');
const { expect } = chai;
describe('b', () => {
it('should pass', () => {
expect(chai.request).to.be.a('function');
});
});

fixtures.js

var chai = require('chai'),
chaiHttp = require('chai-http');
exports.mochaGlobalSetup = function () {
chai.use(chaiHttp);
console.log('setup chaiHttp plugin');
};

运行测试套件,结果如下:

npx mocha --require fixtures.js ./**/*.test.js
setup chaiHttp plugin

a
✓ should pass
b
✓ should pass

2 passing (5ms)

相关内容

  • 没有找到相关文章

最新更新