我试图在实习生中使用sinon-chai plugin,但它给了我:
Error {stack: (...), message: "Cannot find the Node.js require"}
我已经通过npm安装了插件,这是我的测试文件:
define([
'intern!bdd',
'intern/chai!expect',
'app/functions',
'intern/chai',
'intern/dojo/node!sinon-chai'
], function (bdd, expect, myapp, chai, sinonChai) {
chai.use(sinonChai);
...
});
可能出现什么问题?
答案 0 :(得分:2)
节点加载器需要Node.js,因此无法在浏览器中使用。您需要直接加载sinon-chai库,如下所示(假设从您的测试到node_modules
的相对路径为../node_modules
):
define([
'intern!bdd',
'intern/chai!expect',
'app/functions',
'intern/chai',
'../node_modules/sinon-chai/lib/sinon-chai'
], function (bdd, expect, myapp, chai, sinonChai) {
chai.use(sinonChai);
...
});
您可以通过在实习生配置中定义sinon-chai包来简化测试包括:
...
loader: {
{ name: 'sinon-chai', location: 'node_modules/sinon-chai/lib' },
...
}
...
然后你就可以了:
define([
...
'sinon-chai/sinon-chai'
], function (bed, expect, myapp, chai, sinonChai) {
...
});