我用Mocha来测试我的JavaScript东西。我的测试文件包含5个测试。是否可以运行一个特定的测试(或一组测试),而不是文件中的所有测试?


当前回答

使用Mocha的——fgrep(或者-f)你可以选择包含字符串的测试,例如:

mocha -f 'my test x'

将在it()、describe()或context()块中运行包含我的测试x的所有测试。

其他回答

查看文档,我们看到简单地使用:

mocha test/myfile

将工作。你可以省略结尾的'.js'。

嗨,上面的解决方案对我不起作用。 运行单个测试的另一种方法是

mocha test/cartcheckout/checkout.js -g 'Test Name Goes here'

这有助于从单个文件和特定名称运行测试用例。

使用Mocha的——fgrep(或者-f)你可以选择包含字符串的测试,例如:

mocha -f 'my test x'

将在it()、describe()或context()块中运行包含我的测试x的所有测试。

只在“describe”,“it”或“context”之前使用。我使用“$npm run test:unit”运行,它只执行带有.only的单元。

describe.only('get success', function() {
 // ...
});

it.only('should return 1', function() {
  // ...
});

如果你使用npm测试(使用包。Json脚本)使用一个额外的——通过mocha传递参数

例如NPM test -- --grep“my second test”

编辑:看起来——grep可能有点麻烦(可能取决于其他参数)。您可以:

修改package.json:

"test:mocha": "mocha --grep \"<DealsList />\" .",

或者使用保释金,这似乎不那么麻烦

npm test -- --bail