Mobile-testing-appium-framework
提供:Dev Guides
モバイルテスト-Appiumフレームワーク
Appiumは、ネイティブおよびハイブリッドアプリとモバイルWebアプリをテストするためのオープンソースのテスト自動化フレームワークです。 WebDriverプロトコルを使用してiOSおよびAndroidアプリを駆動します。
Appiumの利点
- 無料で、(ほとんど)オープンソースです。
- 非常によくサポートされたアクティブなGoogleグループがあります。
- これはSelenium 3の仕様に含まれているので、将来の証拠になるはずです。
- AndroidとiOSの両方をサポートしています。
- デバイスに何かをインストールする必要はありません。サーバーやコードの変更は不要です。
Appiumの欠点
- インテリジェントな待機はサポートされていません。
- iOSでは、Macごとに一度に1つのテストしか実行できません。
- ジェスチャーの限定サポート。
- Android <4.1の限定サポート
Appiumの使用方法
- ステップ1 *-Appiumを使用するための前提条件はJava SDK(最小1.6)です。 システムにJavaがインストールされていない場合は、以下の手順に従ってください。
- Oracle JavaSEからJDKおよびJREをダウンロードします。
- ライセンス契約に同意します。
- JDKおよびJREをインストールします。
- 以下のスクリーンショットに示すように、環境変数を設定します。
- ステップ2 *-http://developer.android.com/sdk/indexl[SDK]からAndroid Studioをダウンロードします(ファイルのサイズのため、時間がかかります)。
- exeをダブルクリックして、インストーラーを実行します。
- すべてのデフォルトオプションで続行します。
- ANDROID_HOMEを設定します。
- ステップ3 *-Androidイメージとツールをインストールします。
- SDK Managerをクリックします−
- 必要なパッケージを選択します。 たとえば、Android 4.4.2用のアプリを構築している場合、次のパッケージが[ツール]セクションでチェックされていることを確認します-
- Android SDK Tools rev 22.6.3
- Android Platform-tools rev 19.0.1
- Android SDK Build-tools rev 19.1
- ステップ4 *-Android仮想デバイスの作成-
- Android Studioを開き、ツールバーの[AVDマネージャー]をクリックします。 AVDを使用すると、Androidアプリをテストして実行できます。
- Nexus5 AVDには次の設定を使用します-
- デバイス:Nexus 5(4.95、1080 x 1920; xxhdpi)
- ターゲット:Google API x86(Google Inc.)-APIレベル19
- 名前にGoogle APIを含むターゲットを選択してください。
- CPU:Intel Atom(x86)
- Use Host GPUのチェックボックスをオンにします
- OKをクリックしてください。
- これで、作成したAVDがAVDマネージャーに表示され、開始、削除、または別のAVDを作成できます。
- ステップ5 *-http://appium.io/[Appium]からAppium jarファイルをダウンロードします
Appiumでアプリをテストする
Appiumでアプリをテストするには、以下の手順に従ってください-
- ステップ1 *-Android Studioで「RobotiumTest」という名前のテストプロジェクトを作成します。
メインページに到達するまで、すべてのデフォルトオプションを選択します。
- ステップ2 *-Appium jarをプロジェクトに追加します。 プロジェクト→アプリ→lib内のすべてのjarをコピーします。 Selenium、Javaクライアント、およびJunit Jarを除くコピーされたjarを選択し、それを右クリックして[ライブラリとして追加]をクリックします。
- ステップ3 *-アプリでbuild.gradleをクリックします。 次のスクリーンショットに示すように、追加されたすべてのライブラリが表示されます。
- ステップ4 *-次に示すJavaクラスを作成します-
AppiumDriver driver;
@Before
public void testCaseSetup()throws Exception {
//service.start();
//reader.readFile();
DesiredCapabilities cap = new DesiredCapabilities();
cap.setCapability(MobileCapabilityType.PLATFORM_NAME,"Android");
cap.setCapability(MobileCapabilityType.DEVICE_NAME, "Android device");
cap.setCapability(MobileCapabilityType.NEW_COMMAND_TIMEOUT, "4000");
cap.setCapability(MobileCapabilityType.APP, "c://apk//sample.apk");
driver = new AndroidDriver<MobileElement>("http://127.0.0.1:4444/wd/hub",cap);
}
@Test
public void testcase1()throws Exception {
driver.findElementByID("Example").click();
Asser.assertTrue(driver.findElementByID("Example").isDisplayed));
}
@After
public void testCaseTearDown() {
driver.quit();
}
- ステップ5 *-テストケースの実行。
- ビルドバリアントをクリックし、ユニットテストを選択します。
- 特定のポート「4444」でAppiumサーバーを起動します。
- ここからWindows用Appiumをダウンロードします。
- .exeをダブルクリックして、Appiumをインストールします。
- アイコンをクリックして、UIをアップします。
- 以下に示すように、必要に応じてポートを変更します。
- [再生]ボタンをクリックしてサーバーを起動します。
- USBデバッグをオンにしてデバイスを接続するか、エミュレーターを起動します。
- テストクラスを右クリックし、[実行]をクリックします。