resolve e2e flakiness

This commit is contained in:
Samuel Newman
2026-09-03 13:05:02 +03:00
parent d0e1f6217a
commit 140a7fd815
3 changed files with 40 additions and 32 deletions
+5 -5
View File
@@ -15,7 +15,7 @@ concurrency:
env:
CI: "1"
MAESTRO_VERSION: "2.6.1"
MAESTRO_VERSION: "2.10.0"
MAESTRO_DRIVER_STARTUP_TIMEOUT: "180000"
MAESTRO_CLI_NO_ANALYTICS: "1"
MAESTRO_CLI_ANALYSIS_NOTIFICATION_DISABLED: "true"
@@ -62,12 +62,12 @@ jobs:
- name: 🔤 Compile translations
uses: ./.github/actions/compile-i18n
- name: 📥 Install Maestro 2.6.1
- name: 📥 Install Maestro 2.10.0
run: |
echo "Installing Maestro" > artifacts/ios/phase.txt
curl -fsSL -o "$RUNNER_TEMP/maestro.zip" \
"https://github.com/mobile-dev-inc/Maestro/releases/download/cli-${MAESTRO_VERSION}/maestro.zip"
echo "3440825f514f537c6a96bcf5de995780c2a4a7f83a43208fdc95d4f1fecfad3b $RUNNER_TEMP/maestro.zip" \
echo "29b675e10cc12080e445e9bfb2e2b4e4dfb9c0f2e30d5884120d258b5e1cd991 $RUNNER_TEMP/maestro.zip" \
| shasum -a 256 --check
unzip -q "$RUNNER_TEMP/maestro.zip" -d "$RUNNER_TEMP"
echo "$RUNNER_TEMP/maestro/bin" >> "$GITHUB_PATH"
@@ -187,12 +187,12 @@ jobs:
- name: 🔤 Compile translations
uses: ./.github/actions/compile-i18n
- name: 📥 Install Maestro 2.6.1
- name: 📥 Install Maestro 2.10.0
run: |
echo "Installing Maestro" > artifacts/android/phase.txt
curl -fsSL -o "$RUNNER_TEMP/maestro.zip" \
"https://github.com/mobile-dev-inc/Maestro/releases/download/cli-${MAESTRO_VERSION}/maestro.zip"
echo "3440825f514f537c6a96bcf5de995780c2a4a7f83a43208fdc95d4f1fecfad3b $RUNNER_TEMP/maestro.zip" \
echo "29b675e10cc12080e445e9bfb2e2b4e4dfb9c0f2e30d5884120d258b5e1cd991 $RUNNER_TEMP/maestro.zip" \
| shasum -a 256 --check
unzip -q "$RUNNER_TEMP/maestro.zip" -d "$RUNNER_TEMP"
echo "$RUNNER_TEMP/maestro/bin" >> "$GITHUB_PATH"
+15 -27
View File
@@ -3,34 +3,22 @@ appId: xyz.blueskyweb.app
- launchApp:
appId: "xyz.blueskyweb.app"
clearState: true
arguments:
"-EXDevMenuIsOnboardingFinished": true
- runFlow:
when:
platform: iOS
commands:
- extendedWaitUntil:
visible: "http://localhost:8081"
timeout: 60000
- tapOn: "http://localhost:8081"
- runFlow:
when:
platform: Android
commands:
- extendedWaitUntil:
visible: "http://10.0.2.2:8081"
timeout: 60000
- tapOn: "http://10.0.2.2:8081"
- extendedWaitUntil:
visible: "Continue"
timeout: 180000
- tapOn: "Continue"
- back
- extendedWaitUntil:
visible:
id: e2eProxyHeaderInput
timeout: 180000
- tapOn:
id: e2eProxyHeaderInput
- inputText: ${output.result}
- pressKey: Enter
- extendedWaitUntil:
visible: "Sign in"
timeout: 180000
- retry:
maxRetries: 3
commands:
- tapOn:
id: e2eProxyHeaderInput
- eraseText
- inputText: ${output.result}
- pressKey: Enter
- extendedWaitUntil:
visible:
id: e2eSignInAlice
timeout: 10000
+20
View File
@@ -20,6 +20,7 @@ module.exports = function (_config) {
const IS_TESTFLIGHT = process.env.EXPO_PUBLIC_ENV === 'testflight'
const IS_PRODUCTION = process.env.EXPO_PUBLIC_ENV === 'production'
const IS_E2E = process.env.EXPO_PUBLIC_ENV === 'e2e'
const IS_DEV = !IS_TESTFLIGHT && !IS_PRODUCTION
const ASSOCIATED_DOMAINS = [
@@ -234,6 +235,25 @@ module.exports = function (_config) {
checkAutomatically: 'NEVER',
},
plugins: [
[
'expo-dev-client',
{
toolsButton: false,
...(IS_E2E
? {
launchMode: 'most-recent',
skipOnboarding: true,
showMenuAtLaunch: false,
ios: {
defaultLaunchURL: 'http://localhost:8081',
},
android: {
defaultLaunchURL: 'http://10.0.2.2:8081',
},
}
: {}),
},
],
'expo-video',
'expo-localization',
'expo-web-browser',