3

我在 node.js 中使用 mocha 并具有 bdd 样式的规范。

是否可以在第一个错误之后保释子套件但继续它的父/兄弟套件?

假设我测试了不同的路由来访问 api,然后如果连接失败,我想中止特定的路由,因为如果第一个操作失败,则使用调用没有用处,但它仍然可以尝试检查其他内容。

如果高级测试发现服务器完全关闭或配置错误,那么我可以中止,而不必等待所有失败的测试超时并用不必要的混乱填充报告。

我看到了以下答案,但这不是我想要的,它保释了一切,这太多了。如果断言失败,我想要一些东西只保释规范树中的一个分支。

如果失败,则跳过规范中的后续 Mocha 测试

4

2 回答 2

1

如果您希望 mocha 在失败后继续处理其他测试文件,您可以使用 find 在每个文件上运行单独的 mocha 实例:

find test/ -name "*.js" -exec mocha {} \;
于 2013-05-22T03:21:39.607 回答
1

听起来mocha-steps可能适用于此:

全局step()函数,作为it(). 任何失败的步骤都会立即中止父级describe。这对于类似 BDD 的场景或需要通过特定步骤运行的冒烟测试非常方便。

于 2019-04-05T12:56:08.417 回答