我一直在使用 karma+requestjs + mocha + chai 和 sinon。我一直在使用 chai-http 模块,但收到 chai.request 不是一个函数。请指出我在哪里犯了错误,我用谷歌搜索了很多还没有运气。
(function() {
var specFiles = null;
var baseUrl = '';
var requirejsCallback = null;
if (typeof window != 'undefined' && window.__karma__ != undefined) {
baseUrl = '/base';
requirejsCallback = window.__karma__.start;
specFiles = [];
for (var file in window.__karma__.files) {
if (window.__karma__.files.hasOwnProperty(file)) {
if (/.*\/js\/spec\/.+_spec\.js$/.test(file)) {
specFiles.push(file);
}
}
}
}
requirejs.config({
baseUrl: baseUrl,
paths: {
'chai': './node_modules/chai/chai',
'sinon': './node_modules/sinon/pkg/sinon',
'chaihttp': './node_modules/chai-http/dist/chai-http',
},
deps: specFiles,
callback: requirejsCallback
});
})();
**Spect-Test.js**
define(['chai', 'sinon', 'chaihttp'], function (chai, sinon, chaihttp) {
var expect = chai.expect;
describe('Service', function () {
it('abctest', function () {
var abccode = { "abc": "1" };
var url = 'http://localhost:1234';
chai.request(url)
.post('test/testService')
.send(abccode )
.end(function (err, res) {
if (err) {
throw err;
}
expect(res.status).to.equal(200);
done();
});
});
});
});
错误
类型错误:chai.request 不是函数
在上下文。 (
最佳答案
根据 mido 对这个问题的评论,使用 chai.use(chaiHttp)
对我有用。
关于javascript - 使用 request js 进行 http 服务单元测试时,chai.request 不是函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37040853/