【问题标题】:How do I set the directory for the test folder in Visual Studio Code with Mocha?如何使用 Mocha 在 Visual Studio Code 中设置测试文件夹的目录?
【发布时间】:2020-05-27 22:44:55
【问题描述】:

根据this tutorial.,我一直在尝试使用 Visual Studio Code 学习 Mocha 单元测试,但是当我单击“播放”按钮开始 Mocha 测试时,我收到一个关于找不到测试文件的错误。

它显然希望我将测试文件放在一个目录中,这会弄乱我在项目中组织事物的方式。

那么,有没有办法让我将它指向我在其他地方设置的测试文件夹?

【问题讨论】:

  • 这是一个类似的问题,stackoverflow.com/questions/10753288/… 我希望对您有所帮助。但在我看来,开玩笑
  • @Tespy 我有一个simple project in GitHub 来回答另一个问题,您实际上可以看到 mocha 在那里的工作原理...随意下载所有文件(或克隆)并在您的计算机中运行...

标签: javascript unit-testing visual-studio-code mocha.js


【解决方案1】:

要告诉 Mocha 到 run the tests in another folder 而不是在默认的 ./test 文件夹中运行,您可以简单地更改命令并执行

mocha "./spec/**/*.js"

或者,如果您的 bash 不支持 ** 运行为

mocha --recursive "./spec/*.js" 

这意味着,您可以轻松地将 VSCode 启动脚本更改为:

{
    "type": "node",
    "request": "launch",
    "name": "Mocha Tests",
    "program": "${workspaceFolder}/node_modules/mocha/bin/_mocha",
    "args": [
        "./<YOUR_FOLDER_HERE>/**/*.js",
        "--ui bdd",
        "--timeout 15000",
        "--sort",
        "--colors",
        "--bail",
        "-R spec",
        "--recursive",
        "--exit",
    ],
    "internalConsoleOptions": "openOnSessionStart"
}

记得将 &lt;YOUR_FOLDER_HERE&gt; 更改为您拥有测试的文件夹名称

如果您的代码中有测试但它们被命名,例如routes.spec.js,您可以简单地说./**/*.spec.js,并会在您的项目中找到每个以.spec.js结尾的文件

上面的例子和mocha.opts文件一样

# mocha options
--ui bdd
--timeout 15000
--sort
--colors
--bail
-R spec
--require test/prepare
--recursive
--exit

只需使用参数,直到您按照自己的喜好运行它...

顺便说一句,如果您使用的是 VSCode,我强烈推荐 Mocha extension(有几个),因为您不需要将测试作为启动命令运行,并且 您将在您的侧边栏中包含所有测试,并可以选择调试每个测试并向您的代码添加断点

在你的测试中也是如此

附:这个项目is in GitHub 所以你可以看到一切是如何工作的,包括代码覆盖率,如果你想看看它是如何工作的:)

【讨论】:

  • 非常感谢!效果很好 ^_^ 现在我可以更轻松地为某个游戏引擎编程 xD
猜你喜欢
  • 2020-06-19
  • 1970-01-01
  • 2019-10-04
  • 2017-08-18
  • 1970-01-01
  • 2015-12-20
  • 2018-04-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多