在运行e2e测试之前,如何不重建本机应用程序?

时间:2018-06-01 10:37:00

标签: react-native mocking e2e-testing stubbing detox

我正在使用排毒来测试我的RN应用程序

我在这样的测试中有一个Facebook登录存根:

// js/actions/login.e2e.js

function fbAuth() {
  console.log('stubbed auth with Facebook');
}

module.exports = { fbAuth };

当我使用RN_SRC_EXT=e2e.js react-native run-android构建我的应用程序然后运行测试detox test -c android.emu.debug时,它使用带有存根的文件

当我使用react-native run-android构建我的应用程序然后运行测试时,它使用非存根版本(使用Facebook真正登录)

我的排毒配置如下

 "detox": {
    "configurations": {
      "android.emu.debug": {
        "binaryPath": "android/app/build/outputs/apk/debug/app-debug.apk",
        "build": "cd android && RN_SRC_EXT=e2e.js ./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug && cd ..",
        "type": "android.emulator",
        "name": "Android_Accelerated_Nougat"
      }
    }
  }

问题是:在开始测试之前,如何在不运行*e2e.js的情况下配置排毒以在测试中使用RN_SRC_EXT=e2e.js react-native run-android文件?

我已经尝试了

RN_SRC_EXT=e2e.js node_modules/.bin/mocha e2e --opts e2e/mocha.opts --configuration android.emu.debug --grep :ios: --invert

RN_SRC_EXT=e2e.js detox test -c android.emu.debug

但它没有帮助

更新

实际上RN_SRC_EXT=e2e.js react-native run-android没有帮助:我需要停止我的Metro流程并运行RN_SRC_EXT=e2e.js react-native run-android以强制RN在测试包中使用e2e.js个文件

0 个答案:

没有答案