問題タブ [appium]
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.
android - Appiumを使用してAndroidでWebテストを行う方法
構成せずに appium.exe UI の起動ボタンをクリックします。次のコードを実行すると、Android エミュレーターに設定がありません。
java - junit テストの実行中に物理 Web サーバーをモックする
特定の URL に対して JSON 応答をモックできる単純なフレームワークを探しているため、メモリ内サーバーを起動します。たとえば、フレームワークは node.js サーバーなどを起動できます。
単体テストは外部アプリケーション (セレンを使用) に対して実行されており、このアプリケーションは JSON インターフェイスに依存しているため、物理サーバーが必要です。アプリケーション自体は、シミュレーター内で実行される iPhone アプリであり、REST インターフェイスと通信します。
このための既存のフレームワークはありますか、それとも jUnit でテストを実行する必要があることを考えると、最善のアプローチは何でしょうか。
selenium-webdriver - 機能でプロキシを使用するためのサポート?
機能オブジェクトを使用してプロキシを設定するための appium のサポートはありますか? これは Selenium webdriver で可能ですが、appium ではうまくいかないようです。
WebDriver プロキシの例のリンク: http://www.seleniumhq.org/docs/04_webdriver_advanced.jsp#using-a-proxy
android - アプリの起動に使用されたアクティビティが存在しません! 存在することを確認してください
Appium を使用して Hello World Android アプリをテストしようとすると、Activity used to start app doesn't exist! Make sure it exists
- パッケージを含むapkがあります:
com.company.myapp
- パッケージには次のアクティビティがあります。
MainActivity
- APK は Android 4.4、API レベル 19 を対象としています
- 私はシミュレートされたAndroidデバイスを持っています
adt-bundle-mac-x86_64-20131030/sdk/tools/emulator -avd 4.4-KitKat-Nexus-4
- DesiredCapabilities では、次のことを試しました
app-activity
。"MainActivity"
".MainActivity"
"com.company.myapp.MainActivity"
- Appiumのログによると
debug: Request received with params: {"desiredCapabilities":{"newCommandTimeout":"60","app":"/Users/me/Development/workspace/myapp/bin/myapp.apk","platform":"MAC","browserName":"","app-package":"com.company.myapp","device-ready-timeout":"60","device":"android","launch":"true","compressXml":"true","app-wait-activity":"com.company.myapp.MainActivity","app-activity":"com.company.myapp.MainActivity","version":"4.4"}}
- Appium はセッションを作成し、Android appium を開始し、接続された (シミュレートされた) デバイスを見つけ、アプリがインストールされていないと言い、アプリは既に署名されており、保持したい apk を見つけ、削除するものを見つけられず、実行し
adb -s emulator-5554 shell pm install -r [apk it found that it wants to keep]
、ポートを転送4724
し、ウェイクアップしますデバイスの取得{"value":true,"status":0}
、画面のロックが解除されていることを確認します...
そして、それが実行adb -s emulator-5554 shell am start -n com.company.myapp/com.company.myapp.MainActivity
され、上記のエラー メッセージが表示されます。
も試してみます。アクティビティの先頭に追加され、同じエラー メッセージが表示されます。
android - Appium + Android + WebDriver findElement() : sendKeys() の後に要素が見つかりませんか?
シミュレートされた Android デバイスと Appium があります。私のテストでは、特定のテキスト フィールドに適切なアクティビティとタイプが正常に起動されます。しかし、テキストを確認するために同じテキスト フィールドを見つけようとする"An element could not be located on the page using the given search parameters."
と、2 回目の検索ではなく要素を再利用しようとしても、同じメッセージで失敗します。どうすればいいですか?2 番目のコンテキストfindElement()
が間違っている可能性があります。テキスト フィールドの横にあるボタンも見つかりません。
アプリとテスト プロジェクトを含む git リポジトリを次に示します。失敗した JUnit テストは、問題を示しています: https://github.com/achengs/an-appium-question
以下の詳細 (コードと Appium ログのインターリーブ)
最初に成功した findElement を次に示します。アクティビティのレイアウト xml ファイルには、探しているテキスト フィールドの次の属性があります。android:id="@+id/edit_message"
最初の findElement は成功します:
挨拶!
それは成功します:
失敗した 2 番目の findElement を次に示します。(この findElement をスキップして元のものを再利用すると、または代わりにテキスト フィールドの横にある [送信] ボタンを見つけようとすると、同様のエラーが発生します)
失敗のログは次のとおりです。
HTMLのリクエストがありました。ネイティブの Android アプリをテストしています。テスト中の現在のアクティビティのレイアウト xml を次に示します。ここに含める必要があるものが他にある場合は、お知らせください。
ios - IOS テスト: 2 つのアプリ間の相互作用をテストする
UI オートメーションを使用して、IOS アプリのテストを自動化する必要があります。次のシナリオをテストする必要があります。
1) メール アプリを開き、共有するファイルを選択します。これでアプリが開きます 2) 次に、アプリで UI アクションを実行し、いくつかのテストを行う必要があります
InstrumentsまたはAppiumを使用してこのシナリオを自動化する方法がわかりません。これらのツールはすべて、1 つのアプリのバンドル名を取ります。1 つのスクリプトから 2 つのアプリで UI アクションを制御および実行する方法が必要です。
助言がありますか?
編集:明確にするために