2016-06-27 5 views
1

私が行っているプロジェクトは、iosアプリケーションと同じ時点でWebアプリケーションを開発していて、既存のSeleniumテストを使用できることを期待していますがセレクタに問題があります。 Selenium WebdriverとAppium iosの両方に使用できるセレクタタイプまたは属性名があるので、変数をブラウザまたはアプリに設定して実行し、両方で動作させることができます。このプロジェクトの誰も以前はAppiumを使用していませんでしたので、知識があまりないです。Appium iosでSelenium Webdriver Selectorsを使用する

IDを使用しようとしましたが、iosが動作しないことが判明し、名前に変更され、appiumから名前が削除されました。可能であれば、ブラウザーではアプリ内と同じセレクターを使用することをお勧めします。複数のオブジェクト・リポジトリを作成し、基盤となるプラットフォームに基づいて関連オブジェクトリポジトリのロードについて

おかげ

答えて

2

ウェブアプリケーションとiOSアプリケーションのロケータを含むオブジェクトリポジトリファイルを1つ作成できます。そして、あなたはWebDriverAppiumDriverインスタンス

  • はWebAppの中の要素だけでなく、iOSアプリを見つけるための関連ドライバを使用して作成し、以下のプロセス

    1. に従わなければなりません。テストケース内で両方のドライバを使用することができます。

    WebDriverAppiumDriverは要素が異なることに注意してください。例えば、WebDriverでは、要素がIDを使用して識別される場合、AppiumDriverと同様に、findElementByAccessibilityIdを使用して要素を識別することができる。

    AppiumDriverは、WebDriverと同じロジックを使用していますが、メソッド名が異なります。使用しているすべての方法についてlinkを見つけてください。AppiumDriver

    希望します。

  • 0

    どのように?
    1.両方のプラットフォームのロケータを別々のリポジトリに保存する必要があります
    2.テストを実行するプラットフォームに基づいて関連するリポジトリをロードするInterface /ラッパーを作成します。