使用 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();

看起来并没有那么棒,但仍然有效 ;) 希望它能对某人有所帮助。