1

モバイルアプリの自動化テストは初めてで、デバイスをサーバー/コンソールに接続し、接続されたデバイスを Web からリモートで制御する必要があります。どうすればこれを達成できますか。助言がありますか?ネイティブ アプリ用に selendroid を試しましたが、Web とデバイスを同時にテストする方法がわかりません。

例: 「Airdroid」のような私のアプリ

4

1 に答える 1

1

Appium サーバーを起動すると、特定のポートでリッスンが開始されます。テスト コードでは、Appium が実行されているアドレスを指す URL オブジェクトを渡すことで AndroidDriver オブジェクトを初期化できます。

たとえば、Appium が www.example.com のポート 4723 で実行されている場合、クライアント側のテスト コードには次の行が必要です。

AndroidDriver driver = new AndroidDriver(new URL("http://www.example.com:4723/wd/hub"),
   capabilities);

capabilities オブジェクトは、Appium サーバーのパラメーターとフラグをリストする DesiredCapabilities オブジェクトです。AndroidDriver オブジェクトを初期化した後、ドライバーで AndroidDriver のメソッドを呼び出して、リモート サーバーに接続されているアプリを実行しているデバイスと対話できます。

また、AndroidDriver クラスの Appium Java クライアントを既にダウンロードしていると仮定しましたが、まだダウンロードしていない場合は、Maven プロジェクトの pom.xml に以下を追加できます。

<dependency>
  <groupId>io.appium</groupId>
  <artifactId>java-client</artifactId>
  <version>2.1.0</version>
</dependency>

また、今後の参考のために、Java クライアントと Appium のドキュメントへのリンクを次に示します。

http://appium.github.io/java-client/io/appium/java_client/android/AndroidDriver.html
http://appium.io/slate/en/master/?java#appium-server-capabilities
https:/ /github.com/appium/java-client/blob/master/README.md

また、接続リクエストが Appium に到達できるように、ファイアウォールでポートを転送してください。

于 2015-01-13T22:00:04.257 に答える