我们使用Chutzpah作为我们的测试运行器,并且对它非常满意。我们使用Jasmine编写测试。Jasmine 不需要 DOM。
在测试文件的开头,添加了对被测 JavaScript 文件的引用,如下所示:
/// <reference path="dependantModule.js" />
/// <reference path="code2test.js" />
然后测试代码如下:
describe("code2test test suite", function () {
it("should do something"", function () {
var result;
// Assuming code2test.js exposes a global called 'code2test'
result = code2test.doSomething();
expect(result).toEqual("the expected result");
});
});
Chutzpah 使用 PhantomJS 无头浏览器。因此,如果需要,您可以编写与 DOM 交互的测试。
我们从命令行通过 Chutzpah 运行测试以进行持续集成,但也使用 Chutzpah Visual Studio Extension 在 Visual Studio 2010 中运行它们。我相信在 VS2012 中集成 Chutzpah 更容易,但我自己没有尝试过。
测试也可以在“真正的”浏览器中运行,这非常适合调试。我选择的用于调试测试代码的浏览器是 Chrome——开发者工具很棒。