在非交互模式下运行CRA Jest

AlexStack:

更新:我的用例主要是在CI上运行测试,但是我通常想知道重写默认的CRA Jest参数。


我正在使用Create React App附带Jest配置运行测试它总是启动为交互模式:

 › Press a to run all tests.
 › Press o to only run tests related to changed files.
 › Press p to filter by a filename regex pattern.
 › Press q to quit watch mode.
 › Press Enter to trigger a test run.

但是我不希望它等待我的输入。我希望它运行一次然后终止。我尝试使用--bailor --no-watchman开关,但它仍以交互模式启动。

如果我全局安装jest,并在项目的根目录中运行它,它将执行一次并完成(如我所愿)。但是当我跑步时npm testreact-scripts test即使我没有过去,它也会进入监视模式--watch

更新:我也对CRA提出了问题

韦恩:

您应该使用Jests --watchAll=false标志

例如:

npm test -- --watchAll=false

注意:这是针对react-scripts> 3.00

对于旧版本:

  • 反应脚本 >= 2.1.4 < 3.00

    对于非CI,例如在本地运行测试,您可以从``传递一个--no-watch标志:

    npm test --no-watch

  • 反应脚本 <= 2.1.3

    CRA寻找一个CI环境变量(如果存在),它不会在监视模式下运行。

    CI=true npm test 应该做你想要的

请参阅用户指南->运行测试->在您自己的环境中

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章