設定
OS: Ubuntu 12.04 64
ビット CPU: クアッドコア AMD Opteron(tm) プロセッサ 2352、2.1GHz
RAM: 2GB
ヘッドレス Ubuntu、Eclipse なしで Xvfb を使用
Android: v4.2.2 & webdriver v2.32.0
質問
次の手順でわかるように、エミュレーターが初期化され、Webdriver が読み込まれて有効になります。ただし、Android Webdriver は次の URL でのブラウザー接続に応答しません。
http://myremoteserver:8080/wd/hub
Webdriver をデバッグする方法はありますか (例: エミュレーター シェルからそのアクティビティを監視する)。
stackoverflow に関して、 [android] [android-emulator] [webdriver] [selenium] でタグ付けされた質問を読みましたが、残念ながら答えがありません。
Android Developer Google Group も確認しました。
できる限り正確な情報を提供するよう努めましたが、さらに詳しい情報が必要な場合は、お気軽にお問い合わせください。送信!
詳細な手順
shell コマンドの前には$
shell STDOUT の前に>
- 画面 99 で仮想 X サーバーを起動します。
$ Xvfb :99 -ac -screen 0 1024x768x8 2>/dev/null &
- $DISPLAY を定義します。
$ エクスポート DISPLAY=:99
- adt-bundle をダウンロードし、sdk/ dir を ~ で解凍し、名前を「android_sdk」に変更します
次のすべてのコマンドはから発行されます~/android_sdk/tools
- SDK を更新します。
$ ./android update sdk --no-ui
- リスト ターゲット:
$ ./android リスト ターゲット
適切なターゲットは 25 番であることがわかりました。
> id: 25 または "android-17" 名前: Android 4.2.2 タイプ: プラットフォーム API レベル: 17 リビジョン: 2 スキン: WVGA854、WQVGA400、WSVGA、WQVGA432、WXGA800-7in、HVGA、WXGA800、WVGA800 (デフォルト)、QVGA、WXGA720 ABI : armeabi-v7a、mips、x86
- エミュレーターを作成します。
$ ./android create avd -n my_android -t 25 -c 100M --abi armeabi-v7a
- エミュレーターを起動します。
$ ./emulator -avd my_android -no-audio & > コンテキスト 0x3005 の作成に失敗しました > emulator: 警告: ソフトウェア レンダラーを使用して OpenglES エミュレーションを初期化できませんでした。
- サーバーによってエミュレータデーモンが見つかったかどうかを確認します。
$ ../platform-tools/adb デバイス > * デーモンが実行されていません。ポート 5037 で今すぐ開始 * * デーモンが正常に起動しました * 接続されたデバイスのリスト emulator-5554 デバイス
- 最新の Webdriver をダウンロードし、'tools/' で解凍します。
- エミュレーターに webdriver をインストールします。
$ ../platform-tools/adb -s emulator-5554 -e インストール -r android-server-2.32.0.apk > 成功
- Webdriver を起動します。
../platform-tools/adb -s emulator-5554 shell am start -a android.intent.action.MAIN -n org.openqa.selenium.android.app/.MainActivity -e debug true > 開始: インテント { act=android.intent.action.MAIN cmp=org.openqa.selenium.android.app/.MainActivity (エクストラあり) }
- エミュレータ シェルを使用して、Webdriver パッケージが適切に有効になっていることを確認します。
$ ../platform-tools/adb -s emulator-5554 シェル (エミュレータ シェルから): $ pm list packages -e > パッケージ:org.openqa.selenium.android.app
- 転送リクエスト:
$ ../platform-tools/adb -s emulator-5554 forward tcp:8080 tcp:8080