在 VueJs Web 应用程序中,我们使用 vue-test-utils 和 mocha-webpack 编写了 500 多个单元测试用例(在所有模块中),使用 nyc 进行覆盖率报告。考虑一个目录中的每个模块。当我为特定模块运行测试用例时,报告会成功生成测试用例结果(通过或失败)。但是一次性运行所有测试用例(通过在 package.json 中设置路径),所有测试用例都不会执行并抛出以下错误:
超过 100000 毫秒的超时。对于异步测试和钩子,确保调用了“done()”;如果返回 Promise,请确保它已解决。
我已经看到类似的问题,建议在代码中使用异步等待或增加超时来解决这个问题,但是为什么当我为特定模块运行时测试用例会被执行,而当我为整个项目运行时会抛出上述错误。
我尝试在 package.json 中设置 --timeout 100000 并且它有助于大量测试用例,但是在再次运行所有(超过 500 个)单元测试用例时它会引发相同的错误。我认为这与测试用例的数量有关。
是什么导致了这个问题以及如何解决这个问题,以便所有测试用例都能成功运行。?
编辑 如果单元测试中的任何代码导致此超时问题,如何检测导致此问题的测试用例,因为通过查看命令提示符中的日志似乎无法检测问题的根源。任何指针都会有所帮助。