将 env 文件传递给 detox
Pass env file to detox
当我在我的 react-native 应用程序中进行 运行 排毒测试时,我想传递环境变量:
"ios.sim.debug": {
"binaryPath": "ios/build/Build/Products/Debug-iphonesimulator/myapp.app",
"build": "export IS_DETOX=true && xcodebuild -workspace ios/myapp.xcworkspace -scheme my app -configuration Debug -sdk iphonesimulator -derivedDataPath ios/build",
"type": "ios.simulator",
"device": {
"type": "iPhone 11 Pro"
}
}
我已经安装了 react-native-config。但是当我 运行 排毒测试时,变量 IS_DETOX 在 JS 中是未定义的。
谢谢
我正在设置没有 export
的环境变量。
我所有的 .env 变量都存储在配置文件夹中,我可以为不同的配置加载不同的环境文件。
iOS
"ios.sim.release": {
"binaryPath": "ios/build/Build/Products/Release-iphonesimulator/Clim8Invest.app",
"build": "ENVFILE=config/.env.acceptance xcodebuild -workspace ios/Clim8Invest.xcworkspace -scheme Clim8Invest -configuration Release -sdk iphonesimulator -derivedDataPath ios/build",
"type": "ios.simulator",
"device": {
"type": "iPhone 11"
}
},
Android
"android.emu.debug.e2e": {
"binaryPath": "android/app/build/outputs/apk/debug/app-debug.apk",
"build": "cd android && ENVFILE=../config/.env.e2e ./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug && cd ..",
"type": "android.emulator",
"device": {
"avdName": "Nexus_5X_A"
}
}
谢谢@Black!
在我这边,我最终使用了 Detox Mocking Guide 中 RN_SRC_EXT=e2e.js
的另一种解决方案,以便排毒构建使用 MyConfig.e2e.js
文件而不是 MyConfig.js
文件中的参数
当我在我的 react-native 应用程序中进行 运行 排毒测试时,我想传递环境变量:
"ios.sim.debug": {
"binaryPath": "ios/build/Build/Products/Debug-iphonesimulator/myapp.app",
"build": "export IS_DETOX=true && xcodebuild -workspace ios/myapp.xcworkspace -scheme my app -configuration Debug -sdk iphonesimulator -derivedDataPath ios/build",
"type": "ios.simulator",
"device": {
"type": "iPhone 11 Pro"
}
}
我已经安装了 react-native-config。但是当我 运行 排毒测试时,变量 IS_DETOX 在 JS 中是未定义的。
谢谢
我正在设置没有 export
的环境变量。
我所有的 .env 变量都存储在配置文件夹中,我可以为不同的配置加载不同的环境文件。
iOS
"ios.sim.release": {
"binaryPath": "ios/build/Build/Products/Release-iphonesimulator/Clim8Invest.app",
"build": "ENVFILE=config/.env.acceptance xcodebuild -workspace ios/Clim8Invest.xcworkspace -scheme Clim8Invest -configuration Release -sdk iphonesimulator -derivedDataPath ios/build",
"type": "ios.simulator",
"device": {
"type": "iPhone 11"
}
},
Android
"android.emu.debug.e2e": {
"binaryPath": "android/app/build/outputs/apk/debug/app-debug.apk",
"build": "cd android && ENVFILE=../config/.env.e2e ./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug && cd ..",
"type": "android.emulator",
"device": {
"avdName": "Nexus_5X_A"
}
}
谢谢@Black!
在我这边,我最终使用了 Detox Mocking Guide 中 RN_SRC_EXT=e2e.js
的另一种解决方案,以便排毒构建使用 MyConfig.e2e.js
文件而不是 MyConfig.js
文件中的参数