将模拟注入Browserify进行测试

时间:2014-05-01 05:38:59

标签: unit-testing browserify

我知道,Browserify并不是一个真正的DI框架,但是有可能在单元测试期间注入"或以某种方式伪造注入,模拟数据到应用程序中吗?

例如,要测试函数:

var MyModel = require('./models/My.js');

function doSomething() {
  // do something with model.
}

使用模拟My.js,例如

describe('Do Something', function() {

  beforeEach(function() {
    // replace './models/My.js' with a Mock implementation.
  });

  it('with model', function() {
    // ... test
  });
})

beforeEach函数中的内容是什么?

1 个答案:

答案 0 :(得分:7)

在browserify中有一些用于模拟require调用的工具。

我还没有亲自使用这些。此外,嘲弄并没有用Browserify编写,因此嘲弄甚至可能都不起作用。其他的是为Browserify编写的,所以他们应该付出很少的努力。 :)尽管如此,Proxyquireify和Rewireify似乎是去年唯一活跃的2个。