我正在使用排毒来测试我的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
个文件