reactjs - '--watchAll=false' 和 'CI=true' 有什么区别?

标签 reactjs

我正在使用 reactjs 设置 CI,我不希望测试在监视模式下运行。

documentation对于运行测试,它说明了以下内容:

“默认情况下,npm test 使用交互式 CLI 运行观察程序。但是,您可以强制它运行一次测试并通过设置一个名为 CI 的环境变量来完成该过程。”

如果如上所述设置“CI=true”:

“测试命令将强制 Jest 在 CI 模式下运行,并且测试只会运行一次而不是启动观察者。”

为什么它(如下所引)说 对于非 CI 环境 ?有什么理由不应该在 CI 环境中使用 '--watchAll=false' 吗?

“对于非 CI 环境,您可以简单地传递 --watchAll=false 标志以禁用测试监视。”

我已经在我的 CI 环境中尝试过,在我的情况下,两者似乎都可以正常工作并且做同样的事情。我什至更喜欢“--watchAll=false”,因为这将是一种更跨平台的方法。

那么,我应该在我的 CI 环境中使用哪一个,为什么?还有,他们两个有什么区别?

谢谢!

想知道我应该使用“CI=true”还是“--watchAll=false”的方法。我已经尝试了两者,它们似乎以相同的方式工作。

最佳答案

您的 CI 环境可能会在您不做任何事情的情况下将 CI 环境变量设置为 true。
所以对于你的 CI,你真的不需要设置 watchAll=falseCI=true但是如果你确实想手动设置一些东西,而不是使用 CI=true。
两者之间至少有一个区别是 watchAll=false (如果 CI=false )仍然会创建 Jest 快照(如果它们不存在)。在 CI 环境中你不会想要这个。即使快照更改,您的测试也会通过。

关于reactjs - '--watchAll=false' 和 'CI=true' 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58408035/

相关文章:

javascript - antd - 具有分页控件的 ant 设计表支持小部件来选择每页的行?

javascript - 为什么 api 调用在 gh-pages 上不起作用

javascript - React 的 API 响应为空

html - 为什么移动设备上的 Safari 需要很长时间才能从内存中加载图像?

css - 如何在 React 中向 DOM 元素添加动态 TailwindCSS 类

javascript - React-Bootstrap 设置 FormControl Select 的值

javascript - 类型 '{}' 无法分配给类型 'Readonly<IIdeasContainerProps>' 类型 '...' 中缺少属性 '{}'

reactjs - 是否可以使用 Graph Toolkit 2.0 在 Microsoft Teams 选项卡中进行静默身份验证

javascript - 如何将变量发送到后端 - Mern Stack

javascript - 连接子组件来存储 vs 连接父组件来存储和传递 Prop