reactjs - 设置react-scripts测试环境文件

标签 reactjs testing environment-variables create-react-app react-scripts

我们正在使用react-scripts通过命令 react-scripts test 运行我们的测试。本地我们有自己的测试环境,使用.env.test文件作为环境文件(它自动使用它)。

但是,在我们的 CircleCI 环境中,我们希望使用开发环境运行测试,即使用 .env.development 。我不知道如何分辨react-scripts要使用 dev env 文件,我在运行命令之前尝试设置各种值,如 REACT_APP_ENVNODE_ENV 。我尝试过使用 env-cmd模块指定它使用开发环境文件(例如 env-cmd .env.development react-scripts test ),但它仍然使用测试文件。

我知道在 CircleCI 测试命令中我可以用开发文件覆盖测试环境文件(类似于 cp -rf .env.development .env.test && react-scripts test ),但我想知道是否有一种更干净的方法来做到这一点(因为如果我这样做的话这样,如果我们想在本地使用开发环境进行测试,它会覆盖我们个人的 .env.test 文件)?

最佳答案

您唯一需要做的就是通过添加以下内容来修改 react-scripts test 命令:

--env=jsdom

所以最终的结果是

// package.json
{
    "scripts": {
        ...
        "test": "react-scripts test --env=jsdom"
        ...
    }
}

https://serverless-stack.com/chapters/environments-in-create-react-app.html

关于reactjs - 设置react-scripts测试环境文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55895982/

相关文章:

javascript - 如何在新行而不是主行中呈现 CKEditor5 工具栏按钮?

java - 无法使用 gradle 和 jdk 11 构建 jar

testing - 如何测试密码安全的随机数生成器

python - 将参数传递给 docker-compose 命令

javascript - 在 setTimeout 后 React-Native 推送到其他路由

javascript - 主组件的onclick组件setState()

reactjs - 无法获取React-select中选定的值

unit-testing - 单元测试概率

C#:没有完全扩展环境变量?

azure - 如何为不同的部署配置文件部署不同的host.json?