【发布时间】:2020-05-22 15:56:49
【问题描述】:
我想知道是否有可能在 React Native 中使用单个 repo 构建不同的应用程序。我尝试这样做的原因可能是一个巨大的边缘案例,但它基本上是为了对我正在开发的 RN 模块进行单元测试。
我知道我可以使用 Enzyme 对单个组件进行单元测试,但是我有一些模块是整个框架的一部分,我需要对它们进行端到端的单元测试。所以我的想法是我应该构建应用程序并使用 Appium 在其上运行单元测试。但是如果有多个单元测试呢?我想我们需要构建多个单独的应用程序?但是只有一个 index.js 文件。
我读到我可以在 Android 中设置一些应用目标和方案 (iOS) 以及等效的东西。但是我将如何在 RN 方面处理这个问题?我在哪里可以指定哪个 .js 文件是每个目标的入口点? RN 如何处理构建不同的目标?
https://www.dev6.com/frameworks/building-multiple-apps-from-one-react-native-project/ 阅读这篇文章,了解如何设置多个方案并使用这些方案设置可能影响应用程序控制流的环境变量。但是,这意味着我必须连续运行单元测试,用不同的环境一遍又一遍地加载同一个应用程序(我猜这不是世界末日)。
我在想,如果我有多个index.js 文件,每个单元测试一个,我也许可以设置一些单独的应用程序目标/方案并使用它们,但我想我必须弄清楚如何构建和同时运行它们以进行并发单元测试。我认为react-native run-ios 和run-android 命令只是构建了一个应用程序,所以我不确定如何将其融入我的单元测试工作流程。
非常欢迎对此策略或其他可能策略的任何想法!谢谢:)
【问题讨论】:
标签: android ios reactjs react-native unit-testing