6

我有一个从 Web Storm 导入到 Visual Studio 的节点项目。mocha 测试在 Web Storm 中运行良好,但在 Visual Studio 中它们根本不运行。我已经在相关文件上设置了测试框架,并且测试发现阶段正确地找到了它们。当我运行测试时,即使我修改系统以使其必须失败,它们也会得到一个绿色的勾号。如果我单击输出进行测试,则会看到错误:

NTVS_ERROR:找不到摩卡包。摩卡必须安装在项目本地...

我已经在本地安装了 Mocha,卸载并重新安装,但没有任何区别。

通过编辑 mocha.js 文件以打印出问题所在,我设法获得了一些更具体的错误信息。问题发生在detectMocha 函数期间。我现在在日志中得到的例外是:

[错误:找不到模块 'C:\projects\FastLaneVS"\node_modules\mocha'] 代码:'MODULE_NOT_FOUND'

现在我的假设是我的项目目录之后的这个额外的双引号是问题所在。我已经回到 run_tests.js 并打印出 argv 数组以查看项目目录的来源,并且确实在调用该函数时已经附加了它。

现在我很高兴接受我已经做了一些事情并在某处添加了这句话,但我找不到它。我也不明白为什么 find_tests 应该工作,因为它调用相同的方法并正确传递项目目录。

在我的项目中,它的目录被列为 . 我已经检查了 notepad++ 中的 sln 和 nsproj 文件,试图找到一个虚假的双引号。

我正在使用带有节点工具 1.0.21029.05 的 VS pro 2013 update 4

我可以修改 mocha runner 以修剪尾随双引号,但任何关于如何正确解决此问题的想法都会很棒。

4

0 回答 0