Symptoms: adb: command not found
Solutions:
# macOS - Install via Homebrew
brew install android-platform-tools
# Linux - Install via apt
sudo apt-get install android-tools-adb android-tools-fastboot
# Or add Android SDK platform-tools to PATH
export PATH=$PATH:$HOME/Android/Sdk/platform-toolsSymptoms: adb devices shows device as "unauthorized"
Solutions:
- Check device screen for authorization prompt
- Revoke USB debugging: Settings → Developer options → Revoke USB debugging authorizations
- Reconnect device and authorize again
Symptoms: Cannot find WebView socket or connect via CDP
Solutions:
- Ensure
WebView.setWebContentsDebuggingEnabled(true)is in the app code - Rebuild and reinstall the app
- Check if WebView is actually loaded (visit a page in the app)
- Verify socket exists:
adb shell cat /proc/net/unix | grep webview_devtools_remote
Symptoms: Multiple webview_devtools_remote sockets found
Solutions:
- Close other apps using WebView
- Use PID filtering to find the correct WebView
- Modify test to specify exact package name
Symptoms: Cannot build Android app
Solutions:
# Update Gradle wrapper
cd apps/CanIAndroidWebView
./gradlew wrapper --gradle-version 8.0
# Clean build
./gradlew clean build
# Check Java version (needs JDK 11+)
java -versionSymptoms: xcodebuild: command not found
Solutions:
# Install Xcode Command Line Tools
xcode-select --install
# Set active developer directory
sudo xcode-select --switch /Applications/Xcode.app/Contents/DeveloperSymptoms: Simulator won't start or appears stuck
Solutions:
# List simulators
xcrun simctl list devices
# Delete and recreate simulator
xcrun simctl delete <device-id>
xcrun simctl create "iPhone 13" "iPhone 13"
# Reset simulator
xcrun simctl erase <device-id>
# Restart CoreSimulatorService
sudo killall -9 com.apple.CoreSimulator.CoreSimulatorServiceSymptoms: App won't install or launch due to signing errors
Solutions:
- Open project in Xcode
- Select the app target
- Go to "Signing & Capabilities"
- Enable "Automatically manage signing"
- Select your development team
- Build from Xcode first to resolve signing
Symptoms: Can't see WKWebView in Safari Develop menu
Solutions:
- Ensure app is built in Debug configuration
- Add
isInspectable = truefor iOS 16.4+ (see docs/IOS.md) - Restart Safari
- Check Safari → Preferences → Advanced → "Show Develop menu in menu bar"
Symptoms: Error: listen EADDRINUSE: address already in use :::4723
Solutions:
# Find process using port 4723
lsof -i :4723
# Kill process
kill -9 <PID>
# Or use different port
npx appium --port 4724Symptoms: appium driver install fails
Solutions:
# Clear Appium cache
rm -rf ~/.appium
# Reinstall driver with verbose output
npx appium driver install uiautomator2 --verboseSymptoms: Cannot download Playwright browsers
Solutions:
# Set custom download path
export PLAYWRIGHT_BROWSERS_PATH=$HOME/.cache/ms-playwright
# Re-install browsers
npx playwright install --forceSymptoms: TimeoutError: Timeout 30000ms exceeded when connecting
Solutions:
- Increase timeout in test configuration
- Check if WebView is fully loaded before connecting
- Verify port forwarding:
adb forward --list - Check if CDP endpoint is accessible:
curl http://localhost:9222/json
Symptoms: Tests consistently timeout
Solutions:
- Increase test timeout in
playwright.config.ts - Check network connectivity on device/simulator
- Verify the test URL (collector.openwebdocs.org) is accessible
- Add more wait time after app launch
Symptoms: Tests pass sometimes, fail other times
Solutions:
- Add explicit waits:
await page.waitForLoadState('networkidle') - Increase
sleep()durations after app launch - Use retry logic for connection establishment
- Check device performance (low memory, CPU throttling)
Symptoms: Artifacts not saved
Solutions:
# Ensure directory exists
mkdir -p test-results
# Check permissions
chmod 755 test-results
# Verify in playwright.config.ts
use: {
screenshot: 'only-on-failure',
video: 'retain-on-failure',
}Symptoms: 401 Unauthorized when uploading
Solutions:
- Verify token has
reposcope - Check token hasn't expired
- Test token:
curl -H "Authorization: token $GITHUB_TOKEN" https://api.github.com/user
Symptoms: Results don't appear in repository
Solutions:
- Check repository name:
WebView-CG/webview-bcd-results - Verify branch exists (default:
main) - Check file permissions
- View detailed error:
DEBUG=* npm run upload-results
Symptoms: Appium fails to start with Java errors
Solutions:
# Check Java version (needs 11+)
java -version
# Install correct version
# macOS
brew install openjdk@17
echo 'export PATH="/usr/local/opt/openjdk@17/bin:$PATH"' >> ~/.zshrc
# Linux
sudo apt-get install openjdk-17-jdk- Open an issue: https://github.com/WebView-CG/webview-testing/issues
- WebView CG: https://www.w3.org/community/webview/
- Playwright Discord: https://aka.ms/playwright/discord
- Appium Discussions: https://github.com/appium/appium/discussions