使用 mocha 测试客户端 js
Testing client-side js with mocha
我正在尝试用 mocha 测试我的 .js class(不是节点)。我遇到了一个问题,因为我不知道如何导入它,因为它没有用 module.exports 或其他任何东西包裹。所以,我的 .js 就像
var User = function() {
this.add = function() { ... }
this.update = function() { ... }
}
我想在测试中测试它的一个功能
var User = require('path/to/user.js');
describe('User object', function () {
it('should add some stuff', function () {
var user = new User();
...
})
});
这(带和不带 "var User =")不出所料地给了我 "undefined is not a function"。我错过了什么?
谢谢
感谢@mfreitas,我找到了解决方案。关于我的问题,只需要添加到user.js
的末尾
if(typeof exports !== 'undefined') {
exports.User = User;
}
并更新 mocha 测试
var user = new User.User();
看起来并没有那么棒,但仍然有效 ;) 希望它能对某人有所帮助。
我正在尝试用 mocha 测试我的 .js class(不是节点)。我遇到了一个问题,因为我不知道如何导入它,因为它没有用 module.exports 或其他任何东西包裹。所以,我的 .js 就像
var User = function() {
this.add = function() { ... }
this.update = function() { ... }
}
我想在测试中测试它的一个功能
var User = require('path/to/user.js');
describe('User object', function () {
it('should add some stuff', function () {
var user = new User();
...
})
});
这(带和不带 "var User =")不出所料地给了我 "undefined is not a function"。我错过了什么? 谢谢
感谢@mfreitas,我找到了解决方案。关于我的问题,只需要添加到user.js
的末尾if(typeof exports !== 'undefined') {
exports.User = User;
}
并更新 mocha 测试
var user = new User.User();
看起来并没有那么棒,但仍然有效 ;) 希望它能对某人有所帮助。