README
VNC from build server to local machine ssh -N -L 7900:localhost:7900 build-server
cat ~/.ssh/config
Host build-server HostName 192.168.1.122 User build-server
unzip -l android/app/build/outputs/apk/androidTest/release/app-release-androidTest.apk | grep -i detox
Appium (mobile)
- Start Appium server:
appium - Required env (one of these):
APP_PATH(path to app)APP_PACKAGE+APP_ACTIVITY(Android)BUNDLE_ID(iOS)APPIUM_BROWSER_NAME(mobile web)
- Optional env:
APPIUM_SERVER_URL,APPIUM_DEVICE_NAME,APPIUM_AUTOMATION_NAME- If you run Appium v2 with
/wd/hub, setAPPIUM_SERVER_URL=http://localhost:4723/wd/hub
- If you run Appium v2 with
- Android startup hardening (optional):
APPIUM_SKIP_DEVICE_INITIALIZATION=trueAPPIUM_UIAUTOMATOR2_SERVER_LAUNCH_TIMEOUT=1200000APPIUM_UIAUTOMATOR2_SERVER_INSTALL_TIMEOUT=1800000APPIUM_ANDROID_INSTALL_TIMEOUT=2400000APPIUM_ADB_EXEC_TIMEOUT=1800000APPIUM_SESSION_CREATE_ATTEMPTS=3APPIUM_SESSION_CREATE_RETRY_DELAY_MS=7000
- Run:
yarn test:androidyarn test:ios
Android emulator auto-start (optional)
APPIUM_AVD(AVD name)APPIUM_AVD_LAUNCH_TIMEOUT(ms)APPIUM_AVD_READY_TIMEOUT(ms)APPIUM_AVD_ARGS(extra emulator args)
Permissions/alerts defaults
- Android:
APPIUM_AUTO_GRANT_PERMISSIONS=true(default),APPIUM_DISABLE_ANDROID_WATCHERS=true(default) - iOS:
APPIUM_AUTO_ACCEPT_ALERTS=true(default)
Appium MCP (AI-assisted Appium)
- Edit
apps/e2e-tests/appium-mcp.capabilities.jsonto match your device/app under theandroid,ios, andgeneralsections. - Add the Appium MCP server to your MCP client config using
CAPABILITIES_CONFIGpointing at the JSON file andANDROID_HOMEpointing at your Android SDK. A repo-level example is inmcp.json(merge it into your client config or point your client at it).
{
"mcpServers": {
"appium": {
"command": "npx",
"args": ["-y", "appium-mcp@latest"],
"env": {
"ANDROID_HOME": "/path/to/Android/sdk",
"CAPABILITIES_CONFIG": "/Users/ahmed/Documents/adamondo/GitHub/apps-monorepo/apps/e2e-tests/appium-mcp.capabilities.json"
}
}
}
}
- Start the MCP server with
yarn mcp:appiumafter settingANDROID_HOME.
0- cd ~/Documents/adamondo/GitHub/apps-monorepo/apps/backend yarn start
1- cd ~/Documents/adamondo/GitHub/apps-monorepo/apps/e2e-tests npx appium
2- cd ~/Documents/adamondo/GitHub/apps-monorepo/apps/guest-frontend ./reload.sh
3- cd ~/Documents/adamondo/GitHub/apps-monorepo/apps/e2e-tests yarn test:android -t "Reservation Workflow - Happy Path"