Я пытаюсь запустить свои тесты на детоксикацию через сборку appcenter, но, столкнувшись с некоторыми проблемами, я создал скрипт "appcenter-post-build. sh", который должен запускать тесты так же, как в настоящее время я выполняю локально.
это выглядит так
brew tap wix/brew
brew install applesimutils
npm install -g react-native-cli
npm install -g detox-cli
brew tap facebook/fb
brew install fbsimctl --HEAD
if [ "$platform" == "ios" ];
then
detox test --configuration ios.appcenter.debug --take-screenshots failing --cleanup
else
detox test --configuration android.appcenter.debug --take-screenshots failing --cleanup
fi
Я также добавил конфигурацию в пакет. json, которая выглядит как
detox": {
"configurations": {
"ios.appcenter.debug": {
"binaryPath": "/Users/runner/Library/Developer/Xcode/DerivedData/HGEMGo-crotfzqsahaubjcqbuyxzjoxbmjt/Build/Intermediates.noindex/ArchiveIntermediates/HGEMGo/InstallationBuildProductsLocation/Applications/HGEMGo.app",
"build": "xcodebuild -workspace ios/HGEMGo.xcworkspace -scheme HGEMGo -configuration Debug -sdk iphonesimulator -derivedDataPath ios/build",
"type": "ios.simulator",
"name": "iPhone 11"
},
Пока я жестко закодировал двоичный путь куда я думаю, что файл приложения удаляется при сборке, я хотел бы обновить его до более относительного пути или, возможно, процесса копирования файла в подходящее место в будущем.
но когда приведенный выше скрипт выполняется в appcenter, я собрал несколько ошибок, которые я вижу в журналах
field CFBundleIdentifier not found inside Info.plist of app binary at /Users/runner/Library/Developer/Xcode/DerivedData/HGEMGo-crotfzqsahaubjcqbuyxzjoxbmjt/Build/Intermediates.noindex/ArchiveIntermediates/HGEMGo/InstallationBuildProductsLocation/Applications/HGEMGo.app
ReferenceError: device is not defined
ReferenceError: element is not defined