【发布时间】:2018-10-06 12:07:29
【问题描述】:
我使用 Detox 作为 React Native 应用程序的端到端测试框架。我想模拟 API 请求的结果,以减少测试的脆弱性和时间。
根据documentation,我应该可以让 Metro 使用文件扩展名 e2e.js 覆盖一个模块。
我无法让这个工作,我不完全确定为什么。大多数文档和现有问题都与使用 react-native-repackager 有关,但从 RN 0.55.0 开始,不再需要。
任何帮助/想法将不胜感激!
编辑:
RN_SRC_EXT=e2e.js react-native start 工作正常
RN_SRC_EXT=e2e.js xcodebuild -project <other params> 作为 detox 构建脚本,detox test -c ios.sim.release 不起作用
【问题讨论】:
-
您能分享您的 CLI 配置文件吗?我无法完成这项工作。
-
rn-cli.config.jsmodule.exports = { getSourceExts: () => process.env.RN_SRC_EXT ? process.env.RN_SRC_EXT.split(',') : [], };@milo -
能否分享一下你的 Api.e2e.js 看看你是如何处理 api 调用的?
-
Api.e2e.js 只是导出了与 Api.js 相同的函数,除了它们只会返回解析为我们模拟输出的承诺。我们不再使用它,我可能会建议使用类似 nock 的东西来更真实地模拟 api 调用
-
我在 react-native 0.61.5 中有这个问题!!有什么想法吗?
标签: node.js react-native detox