問題タブ [selendroid]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - WebDriverWait がタイムアウトする前にログを追加する方法
ハイブリッド アプリケーションをテストするために selendroid を使用します。ログを記録し、WebDriverWait を使用して特定の動作を待機する独自のロガーがあります。私の質問は、WebDriverWait が失敗して timeoutException がスローされる前にロガーを使用するにはどうすればよいですか?
android - Selendroid - ネイティブ コールバックを処理する最良の方法は何ですか?
ハイブリッド アプリケーションをテストするために、Selenium と Selendroid を使用しています。私のアプリケーションには、ネイティブ パーツと WebView が含まれています。WebView で ajax 呼び出しを実行し、(PostMessage を使用して) 非同期イベントをリッスンします。
私の問題は、Selendroid テスト (私は Java を使用しています) を WebView コールバックに接続したいということです。意味は、WebView で取得したイベントについて、Selendroid テストで認識したいということです。たとえば、WebView (JavaScript コード内) でイベントが受信されるまでテストを待機させたいとします。
私のネイティブ アプリケーションでは、ネイティブ部分と WebView を接続するために addJavascriptInterface を使用しているため、ネイティブ アプリはイベントを認識しています。これらのイベントをテスト コードに渡すにはどうすればよいですか?
私の最初の試みは、ネイティブ パーツ内に EditText を追加することでした。Web ビューでイベントが受信されると、JavaScriptInterface を介してネイティブ パーツに通知され、この EditText が更新されます。次に、要素にテキストが表示されるまで待機しようとしました( wait.until(ExpectedConditoins.textToBePresentInElement(...)) を使用)が、問題は WebView が開かれ、ネイティブの EditText ビューが非表示になるため、実際にはできませんEditText の変更と私のテストでエラーが発生するのをリッスンします。
私の 2 番目の試みは、ログ ファイルを作成し、ネイティブからのすべてのログをこのファイルに書き込むことでした。次に、テストコードでこのファイルに接続し、新しい行が表示されるのを待ちます。問題は、できるかどうか、そしてこれを行う方法がわからないことです。
私の質問は、WebView 内の JavaScript コードで受信したイベントについて、テスト コードで認識する最善の方法は何かということです。
appium - appiumでselendroidを使用する方法
appiumを使用して実際のデバイスでネイティブアプリのテストを実行するJava Mavenプロジェクトがあります。appiumでselendroidを使用しようとしています。機能の自動化名を selendroid に設定し、appium で selendroid ポートを 8080 に設定しました。アプリは起動していますが、クリックまたはタップが機能しません。さらに何か設定する必要がありますか。以下は、appium からのエラーとコードです。
コード:
android - Selendroidを使用したエミュレータを選択
Selendroid を実行しているときにエミュレータを選択しようとしていますが、このフラグが見つかりました
-emulatorPort "エミュレーターの実行を開始するポート番号を指定します。"
2 つのエミュレーターを実行しているので、テストを実行するときにどちらかを選択したいと思います。したがって、セレンドロイドを起動するときにフラグを使用します
私が書いたテストコードはこれで始まります
しかし、テストを実行するとクラッシュします
id が「-s emulator-5554」を使用して正しいエミュレータを選択していないようです。これはバグですか、それともフラグ「-emulatorPort」を完全に誤解していますか。エミュレーターの 1 つを閉じると、すべて正常に動作します。
または、 Selendroid Gridを使用する必要がありますか?
java - ポップアップエラーが表示されているかどうかを確認する
ネイティブ Android アプリでポップアップが表示されているかどうかを検出できません。シナリオは次のとおりです。
チケットを開始し、製品の追加を開始しましたが、製品を追加すると、その製品を追加できないというエラー メッセージが表示されることがあります (これは正しいです)。問題は、製品を追加しようとするたびに、そのエラーが表示されているかどうかを確認する必要があるということです. そして、これまでに試したことは次のとおりです。
しかし、テストを実行すると上記のどれも機能せず、検証中にスタックすることがあります。どんな助けでも大歓迎です。
java - テスト自動化フレームワーク Selendroid のセットアップに関する問題
Selendroid サーバーのセットアップに問題があります。コマンドjava -jar selendroid-standalone-0.11.0-with-dependencies.jar -app selendroid-test-app-0.11.0.apk
を実行すると、次のエラーが表示されます。
この問題は、Java または Android 環境変数のいずれかに関係していると思います。多くのガイドやフォーラムの投稿を読み、さまざまな方法を試しましたが、いつも同じ結果になります。env-variables は現在、次のように設定されています。
ANDROID_HOME: C:\Users\mawal2\Documents\android\adt-bundle-windows-x86_64-20140702\sdk
JAVA_HOME: C:\Program Files\Java\jdk1.8.0_20\bin
「システム変数」の下:
- パス: %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Windows\CCM;C:\Program Files\OpenVPN\bin; C:\Users\mawal2\Documents\android\adt-bundle-windows-x86_64-20140702\sdk\tools\;C:\Users\mawal2\Documents\android\adt-bundle-windows-x86_64-20140702\sdk\platform -tools\;C:\Program Files\Java\jdk1.8.0_20\bin\;
私のOSはWindows 8.1 Enterpriseです
私が得ることができるすべての助けにとても感謝しています!
よろしくマグナス
java - Selendroid が仮想デバイスを起動しない
Android仮想デバイス用のselendroidとseleniumを使い始めようとしていますが、いくつか問題があります。すべての Java/Android SDK/Eclipse ソフトウェアがインストールされており、Selenium chromedriver テストを正常に実行できます。しかし、Android仮想デバイスを起動するテストを実行しようとすると、起動せず、アプリがhttp://localhost:4444/wd/hub/status
ページにリストされません。
私の一般的なテストは以下のとおりです。以下のコードを実行すると、サーバーが起動し、ステータス ページからローカル ホスト データを確認できますが、アプリのバージョンが表示されません。実行するjava -jar selendroid-standalone-0.11.0-with-dependencies.jar -app selendroid-test-app-0.11.0.apk
と、アプリがステータス ページに表示されます。仮想デバイスにプリロードされたアプリと、仮想デバイス上の署名付きアプリを試してみましたが、どちらも機能しませんでした。
私は、他のどこで解決策を探すべきかとして、ほとんど行き止まりにいます。解決策を探すのに 3 ~ 4 日を費やしましたが、見つからないようです。現在、Java プロジェクトでは、selenium と selendroid .jar ファイルの依存関係のみが読み込まれています。jUnitや「テスト」関連のものはまだインストールしていません
ios - Selenium と ios-driver を使用して Windows マシンから iOS モバイル アプリをテストする
Windows (Web のみ)、Android、および iOS モバイル デバイス (iPad など) 用の Selenium を使用して、ネイティブ、ハイブリッド、および Web ベースのアプリケーションをテストする可能性を調査しています。
テスターにとって理想的なセットアップは、物理デバイスが USB 経由で接続された Windows マシンです。必要なのはSelendroidのスタンドアロン サーバーと JAR 依存関係だけであるため (ADK と USB ドライバーのセットアップを除く)、これは Android で動作します。ただし、私の理解では、これはios-driverを使用する iOS モバイル デバイスでは不可能です。Appiumもチェックアウトしましたが、iOS デバイスをテストするには Mac コンピューターが必要であると述べています。
それで、私の質問になります。Windows マシンから iOS モバイル アプリ (Web、ハイブリッド、ネイティブ) をテストする方法はありますか?
設定のリストは次のとおりです。
- Selenium およびその他の Selenium 互換プラグインを使用する
- Windows マシンからテストを実行する
- iOS VM を使用
できない - Windows マシンと通信するための「仲介者」アプリケーションで Mac マシンを使用できない
- テストする必要がある物理的なモバイル デバイス
- 「ハッキング」なし (脱獄など)
また、iOS アプリケーションの開発経験がないと想定しても問題ありません。