在文件夹中运行所有浏览器化的Mocha测试

时间:2014-10-11 15:02:21

标签: javascript node.js mocha browserify

我有一个浏览器javascript应用程序,该应用程序使用在 Phantom.js 和其他浏览器中运行的 browserify Mocha 测试。

测试使用test/tests.js文件作为我需要每个文件的入口点:

// ...
// Require test files here:
require('./framework/extendable.test');
require('./framework/creator.test');
require('./framework/container.test');
require('./framework/api_client.test');
// ...

这非常繁琐,我希望能够要求整个文件夹。

我尝试使用include-folder只加载每个文件的内容(出于显而易见的原因,我不想eval。)

我也查看了require-dir,但Browserify似乎没有接听到需要的电话。

2 个答案:

答案 0 :(得分:1)

您可以使用Karma(https://github.com/karma-runner/karma)在多个浏览器中运行您的Mocha测试(PhantomJS,FF,IE,本地或远程通过WebDriver,如您所愿)。

然后你可以使用karma-bro(https://github.com/Nikku/karma-bro)预处理器。它将使用browserify动态捆绑您的测试,仅用于测试目的。

因此,您只需在Karma配置中指定包含测试的文件夹。

这就是我这样做的方式。

答案 1 :(得分:0)

您还可以编写自己的简单转换,只需将指定的文件夹名称替换为require调用列表。即使有必要随机到位。这并不难。我正在为自己做很多改造以缓解这样的事情。