使用摩卡进行单元测试淘汰组件

时间:2015-12-18 14:13:11

标签: knockout.js mocha

我之前曾使用Jasmine和Karma对我的Knockout应用程序和组件进行单元测试。由于我不需要这些测试来测试任何DOM,我正在开始使用Mocha。

我正在测试这样的Knockout组件(非常简化):

MyComponent.js:

function MyComponent(params) {
  this.forename = params.forename;
  this.surname = params.surname;
}

exports.MyComponent = MyComponent

ko.components.register('my-component', {
  viewModel: MyComponent,
  template: {
    fromUrl: 'my-component.html'
  }
});

MyComponent.test.js:

var expect = require("expect.js");
var MyComponent = require("./src/components/my-component/my-component");

describe("Should do stuff", function () {
  it("should do stuff, function () {
    var myComponent = new MyComponent({});
    expect(myComponent.forename).to.be(undefined);
  });
});

当我运行它(使用gulp-mocha)时,我收到错误消息ko is not defined。现在我很确定我需要在MyComponent.js中进行淘汰,但我不确定如何。我试过了:

var ko = require("ko");
... require("knockout");
... require("knockout.js");
...require("path/to/knockout/knockout");

我仍然收到此错误消息。我在这里做错了什么?

0 个答案:

没有答案