Appium Essentialsブックの翻訳。 第6章

こんばんは、ハブラ。 Appium Essentialsの翻訳はここで終わりです。 すでに完了しているもの:





この章では:








始める前に



開始する前に、すべてが設定されていることをもう一度確認してください。

Android要件 IOS要件
Java(バージョン7以降) Mac OS(バージョン10.7以降)
Android SDK API、バージョン17以降 Xcode(バージョン4.6.3以降、5.1を推奨)
Androidデバイス IOSプロファイル[これらおよびその他のあいまいな単語については、以下で説明します]
デバイス上のChromeブラウザー IOSデバイス
Eclipse [またはIdea] SafariLauncherアプリ
Testng ios-webkit-debug-proxy
Appiumサーバー Java(バージョン7以降)
Appiumクライアントライブラリ(Javaはまだあります) Eclipse [またはIdea]
Selenium ServerおよびWebDriver Javaライブラリ Testng
APK情報アプリ Selenium ServerおよびWebDriver Javaライブラリ
Appiumサーバー
Appiumクライアントライブラリ(Javaはまだあります)


Androidデバイスが開発者モードであり、USBデバッグが有効になっていることを確認してください。

デバイスが接続されていることを確認するには、コマンドラインに入力します



adb devices
      
      





Androidデバイスのリストが表示されます。 そうでない場合は、adbサーバーを再起動してください。



 adb kill-server adb start-server
      
      





ネイティブおよびハイブリッドアプリケーション用のAndroidに必要な機能



第1章では、オプションとは何か、なぜオプションなのかについて説明しました。 それでは、コードに直行しましょう。

まず、パッケージをインポートします。



 import java.io.File; import org.openqa.selenium.remote.DesiredCapabilities; import io.appium.java_client.remote.MobileCapabilityType;
      
      





今DC:



 DesiredCapabilities caps = new DesiredCapabilities(); File app=new File("path of the apk");//    apk caps.setCapability(MobileCapabilityType.APP,app);//   ,      caps.setCapability(MobileCapabilityType.PLATFORM_VERSION, "4.4");// Android caps.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");// OS caps.setCapability(MobileCapabilityType.DEVICE_NAME, "Moto X");//    caps.setCapability(MobileCapabilityType.APP_PACKAGE, "   (  ,  apk info app)"); caps.setCapability(MobileCapabilityType.APP_ACTIVITY, ",     (    apk info app)");
      
      





Webアプリケーション用のAndroidに必要な機能



Webアプリケーションを使用する場合、ブラウザを使用するため、上記のオプションの一部(APP、APPパッケージ、およびAPP ACTIVITY)は必要ありません。

まず、パッケージをインポートします。



 import java.io.File; import org.openqa.selenium.remote.DesiredCapabilities; import io.appium.java_client.remote.MobileCapabilityType;
      
      





今DC:



 DesiredCapabilities caps = new DesiredCapabilities(); caps.setCapability(MobileCapabilityType.PLATFORM_VERSION, "4.4");// Android caps.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");// OS caps.setCapability(MobileCapabilityType.DEVICE_NAME, "Moto X");//    caps.setCapability(MobileCapabilityType.BROWSER_NAME, "Chrome"); //  Chrome
      
      





構成は完了しました。これで、ドライバーを初期化できます。

インポート:



 import io.appium.java_client.android.AndroidDriver; import java.net.URL;
      
      





初期化:



 AndroidDriver driver = new AndroidDriver (new URL("http://127.0.0.1:4723/wd/hub"), caps);// ,   Appium-
      
      





すべてがAndroidデバイスで動作する準備ができました。



暫定プロファイル、SafariLauncher、ios-webkit-debug-proxyを理解する



iOS用のドライバーを構成する前に、いくつかの手順に従う必要があります。



暫定プロファイル



iOSデバイスにアプリケーションをインストールするには、プロファイルが必要です。 これを行うには、 iOS Developer Programに参加してください



登録後、 このページにアクセスしてプロファイルを生成してください。



このプロファイルをデバイスにインストールする必要があります。



  1. 生成されたプロファイルをダウンロードする
  2. iOSデバイスをMacに接続します
  3. Xcode(バージョン6)を開き、ウィンドウ->デバイスに移動します











  4. 接続されたデバイスのコンテキストメニューを呼び出し、[暫定プロファイルを表示...]をクリックします。











  5. [+]をクリックして、ダウンロードしたプロファイルを選択し、[完了]をクリックします









SafariLauncherアプリとios-webkit-debug-proxy



SafariLauncherは、デバイスでSafariブラウザーを起動するために使用されます。 Safariブラウザを使用するには、SafariLauncherをビルドしてiOSデバイスに展開する必要があります。



  1. ソースをダウンロード
  2. Xcodeを起動し、SafariLauncherプロジェクトを開きます
  3. 展開するデバイスを選択し、ビルドをクリックします
  4. 次に、Appium.dmgのSafariLauncherを置き換える必要があります。 これには以下が必要です。

    1. Appium.dmgのコンテキストメニューを呼び出す
    2. [パッケージの内容を表示]をクリックして、目次/リソース/ node_modules / appium / build / SafariLauncherに移動します
    3. SafariLauncher.zipを解凍します
    4. サブモジュール/ SafariLauncher / build / Release-iphoneosに移動し、SafariLauncherアプリケーションを自分のものに置き換えます。
    5. サブモジュールを圧縮し、SafariLauncher.zipに名前を変更します


次に、Macにios-webkit-debug-proxyをインストールして、接続を確立し、Webビューにアクセスする必要があります。 プロキシを配置するには、brewを使用してコマンドを実行します



 brew install ios-webkit-debug-proxy
      
      





ネイティブおよびハイブリッドアプリケーション用のiOSに必要な機能



第1章では、オプションとは何か、なぜオプションなのかについて説明しました。 それでは、コードに直行しましょう。

まず、パッケージをインポートします。



 import java.io.File; import org.openqa.selenium.remote.DesiredCapabilities; import io.appium.java_client.remote.MobileCapabilityType;
      
      





今DC:



 DesiredCapabilities caps = new DesiredCapabilities(); File app=new File("path of the .app"); caps.setCapability(MobileCapabilityType.APP,app); caps.setCapability(MobileCapabilityType.PLATFORM_VERSION, "8.1"); caps.setCapability(MobileCapabilityType.PLATFORM_NAME, "iOS");// caps.setCapability(MobileCapabilityType.DEVICE_NAME, "iPad");// caps.setCapability("udid","Id  ");//UDID
      
      





Webアプリケーション用のiOSに必要な機能



必要のないオプションもあります。 これらのオプションには、APP、APPパッケージ、およびAPPアクティビティが含まれます。 ここまでがポイントです。



まず、パッケージをインポートします。



 import java.io.File; import org.openqa.selenium.remote.DesiredCapabilities; import io.appium.java_client.remote.MobileCapabilityType;
      
      





今DC:



 DesiredCapabilities caps = new DesiredCapabilities(); caps.setCapability(MobileCapabilityType.PLATFORM_VERSION, "8.1"); caps.setCapability(MobileCapabilityType.PLATFORM_NAME, "iOS"); caps.setCapability(MobileCapabilityType.DEVICE_NAME,"iPad"); caps.setCapability("udid","UDID  "); caps.setCapability(MobileCapabilityType.BROWSER_NAME,"Safari"); //  Safari
      
      





構成は完了しました。これで、ドライバーを初期化できます。 インポート:



 import io.appium.java_client.ios.IOSDriver; import java.net.URL;
      
      





初期化:

 IOSDriver driver = new IOSDriver (new URL("http://127.0.0.1:4723/wd/hub"),caps); //,  Appium-
      
      





すべてがiOSデバイスで動作する準備ができています。



これで、TestNGを追加して、すべてを一緒に実行できます。



 import io.appium.java_client.ios.IOSDriver; import io.appium.java_client.remote.MobileCapabilityType; import java.io.File; import java.net.MalformedURLException; import java.net.URL; import java.util.concurrent.TimeUnit; import org.openqa.selenium.remote.DesiredCapabilities; import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; public class TestAppIication { IOSDriver driver; @BeforeClass //      public void setUp() throws MalformedURLException{ DesiredCapabilities caps = new DesiredCapabilities(); File app=new File("path of the .app"); caps.setCapability(MobileCapabilityType.APP,app); caps.setCapability(MobileCapabilityType.PLATFORM_VERSION, "8.1"); caps.setCapability(MobileCapabilityType.PLATFORM_NAME, "iOS"); caps.setCapability(MobileCapabilityType.DEVICE_NAME,"iPad"); caps.setCapability("udid","UDID  "); caps.setCapability(MobileCapabilityType.BROWSER_NAME, "Safari");// ,    - driver = new IOSDriver (new URL("http://127.0.0.1:4723/wd/hub"), caps); driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS); } @Test public void testExample(){ //   } @AfterClass public void tearDown(){ driver.closeApp(); //driver.quit(); // ,    - } }
      
      





ネイティブアプリケーションの自動化



ネイティブAndroidアプリ



Androidオートメーションの場合、前の章(エミュレーターでテスト済み)と同じコードが機能します。avdに関する情報を削除する必要があるのはユーザーだけです。



Androidでのダイヤルの例を見てみましょう。









  1. 次の必要な機能をインストールして、ダイヤラーアプリケーションを実行します。



     caps.setCapability(MobileCapabilityType.APP_PACKAGE, "com.android.dialer"); caps.setCapability(MobileCapabilityType.APP_ACTIVITY, "com.android.dialer.DialtactsActivity");
          
          





  2. 次に、ダイヤルパッドを見つける必要があります。 AccessibityIdで検索します



     WebElement dialPad= driver.findElementByAccessibilityId("dial pad"));
          
          





  3. クリックして



     dialPad.click();
          
          





  4. 数字キーを見つける必要があります。 簡単なロジックを使用して、キー0〜9を名前で検索し、それぞれをクリックします



     for(int n=0;n<10;n++){ driver.findElement(By.name(""+n+"")).click(); }
          
          





  5. この場合、間違った電話番号を使用しているため、電話はどこにも鳴りません。



  6. 呼び出しボタンを見つけましょう。 AccessibilityIdで検索します。



     WebElement dial= driver.findElementByAccessibilityId("dial"));
          
          





  7. クリック:



     dial.click();
          
          





  8. TestNGを使用するスクリプト全体は次のようになります。



     public class TestAppIication { AndroidDriver driver; @BeforeClass public void setUp() throws MalformedURLException{ DesiredCapabilities caps = new DesiredCapabilities(); caps.setCapability(MobileCapabilityType.PLATFORM_VERSION, "4.4"); caps.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android"); caps.setCapability(MobileCapabilityType.DEVICE_NAME,"Moto X");//I am using Moto X as Real Device caps.setCapability(MobileCapabilityType.APP_PACKAGE, "com.android.dialer"); caps.setCapability(MobileCapabilityType.APP_ACTIVITY, "com.android.dialer.DailtactsActivity"); driver = new AndroidDriver (new URL("http://127.0.0.1:4723/wd/hub"), caps); driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS); } @Test public void testExample(){ WebElement dialPad=driver.findElementByAccessibilityId("dial pad"); dialPad.click(); for(int n=0;n<10;n++){ driver.findElement(By.name(""+n+"")).click(); } WebElement dial=driver.findElementByAccessibilityId("dial"); dial.click(); } @AfterClass public void tearDown(){ driver.closeApp(); } }
          
          





ネイティブiOSアプリ



ここでは、BMI計算機を使用します









体重と身長によって肥満度指数を計算します。 これを行うには、次を実行します。



  1. 次の必要な機能をインストールして、アプリケーションを実行します



     File app=new File("/Users/mhans/appium/ios/BmiCalc.app");//You can change it with your app address caps.setCapability(MobileCapabilityType.APP,app);//To set the app path
          
          





  2. 次に、身長と体重の入力フィールドを見つける必要があります。 Xpathで検索します



     WebElement height=driver.findElement(By.xpath("(//UIATextField)[2]")); WebElement weight=driver.findElement(By.xpath("(//UIATextField)[4]"));
          
          





  3. 計算ボタンを探しています。 名前を使用します:



     WebElement calculateBMI=driver.findElement(By.name("Calculate BMI"));
          
          





  4. 成長を示す



     height.sendKeys("1.82");
          
          





  5. 重量を示す



     weight.sendKeys("75");
          
          





  6. インデックスを数える



     calculateBMI.click();
          
          





  7. TestNGを使用するスクリプト全体は次のようになります。



     public class TestAppIication { IOSDriver driver; @BeforeClass public void setUp() throws MalformedURLException{ File app=new File("/Users/mhans/appium/ios/BmiCalc.app");//You can change it with your app address DesiredCapabilities caps = new DesiredCapabilities(); caps.setCapability(MobileCapabilityType.APP,app); caps.setCapability(MobileCapabilityType.PLATFORM_VERSION, "8.1"); caps.setCapability(MobileCapabilityType.PLATFORM_NAME, "iOS"); caps.setCapability(MobileCapabilityType.DEVICE_NAME,"iPad"); caps.setCapability("udid","Real Device Id "); driver = new IOSDriver (new URL("http://127.0.0.1:4723/wd/hub"), caps); driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS); } @Test public void testExample(){ WebElement height=driver.findElement(By.xpath("(//UIATextField)[2]")); height.sendKeys("1.82"); WebElement weight=driver.findElement(By.xpath("(//UIATextField)[4]")); weight.sendKeys("75"); WebElement calculateBMI=driver.findElement(By.name("Calculate BMI")); calculateBMI.click(); } @AfterClass public void tearDown(){ driver.closeApp(); } }
          
          








Webアプリケーションの自動化



Android Webアプリケーション



たとえば、Gmailのログインページを考えます。 このセクションでは、実際のデバイスでChromeを起動し、目的のアドレスに移動し、ログイン/パスワードを転送して、[サインイン]をクリックする方法を説明します。









  1. 次の必要な機能をインストールしてChromeを実行します



     caps.setCapability(MobileCapabilityType.BROWSER_NAME, "Chrome");
          
          





  2. 次に、アドレスを指定する必要があります



     driver.get("https://www.gmail.com");
          
          





  3. ユーザー名要素を見つける必要があります。 名前ロケーターを使用します



     WebElement username=driver.findElement(By.name("Email"));
          
          





  4. 値を渡す



     username.sendKeys("test");
          
          





  5. 次に、パスワード要素を見つける必要があります。 名前ロケーターを使用します



     WebElement password=driver.findElement(By.name("Passwd"));
          
          





  6. 値を渡す



     password.sendKeys("test");
          
          





  7. サインインボタンを探しています。 名前ロケーターを使用します



     WebElement signIn=driver.findElement(By.name("signIn"));
          
          





  8. クリックして



     signIn.click();
          
          





  9. TestNGを使用するスクリプト全体は次のようになります。



     public class TestAppIication { AndroidDriver driver; @BeforeClass public void setUp() throws MalformedURLException { DesiredCapabilities caps = new DesiredCapabilities(); caps.setCapability(MobileCapabilityType.BROWSER_NAME, "Chrome"); caps.setCapability(MobileCapabilityType.PLATFORM_VERSION, "4.4"); caps.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android"); caps.setCapability(MobileCapabilityType.DEVICE_NAME,"Moto X"); driver = new AndroidDriver (new URL("http://127.0.0.1:4723/wd/hub"), caps); driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS); } @Test public void testExample(){ driver.get("https://www.gmail.com"); WebElement username=driver.findElement(By.name("Email")); username.sendKeys("test"); WebElement password=driver.findElement(By.name("Passwd")); password.sendKeys("test"); WebElement signIn=driver.findElement(By.name("signIn")); signIn.click(); } @AfterClass public void tearDown(){ driver.quit(); } }
          
          





IOS Webアプリケーション



たとえば、Google検索ページを考えてみましょう。 このセクションでは、実際のデバイスでブラウザを起動し、目的のアドレスに移動し、検索文字列を渡して、[検索]をクリックする方法を説明します。









  1. 次の必要な機能をインストールして、Safariを実行します



     caps.setCapability(MobileCapabilityType.BROWSER_NAME, "Safari");
          
          





  2. 次に、アドレスを指定する必要があります



     driver.get("https://www.google.com");
          
          





  3. searchBox要素を見つける必要があります。 名前ロケーターを使用します



     WebElement searchBox=driver.findElement(By.name("q"));
          
          





  4. 値を渡す



     searchBox.sendKeys("Appium for mobile automation");
          
          





  5. スクリプトを実行する前に、プロキシコマンドを有効にする必要があります。



     ios_webkit_debug_proxy -c 2e5n6f615z66e98c1d07d22ee09658130d345443:27753 –d
          
          





    2e5n6f615z66e98c1d07d22ee09658130d345443をデバイスのUDIDに置き換えます。 ポートは27753である必要があります



  6. Web Inspectorが有効(設定| Safari |詳細設定)で、デバイスにSafariLauncherがインストールされていることを確認してください



  7. TestNGを使用するスクリプト全体は次のようになります。



     public class TestAppIication { IOSDriver driver; @BeforeClass public void setUp() throws MalformedURLException{ DesiredCapabilities caps = new DesiredCapabilities(); caps.setCapability(MobileCapabilityType.BROWSER_NAME, "Safari"); caps.setCapability(MobileCapabilityType.PLATFORM_VERSION, "8.1"); caps.setCapability(MobileCapabilityType.PLATFORM_NAME, "iOS"); caps.setCapability(MobileCapabilityType.DEVICE_NAME, "iPad"); caps.setCapability("udid","Real Device Identifier"); driver = new IOSDriver (new URL("http://127.0.0.1:4723/wd/hub"), caps); driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS); } @Test public void testExample(){ driver.get("https://www.google.com"); WebElement searchBox=driver.findElement(By.name("q")); searchBox.sendKeys("Appium for mobile automation"); } @AfterClass public void tearDown(){ driver.quit(); } }
          
          







ハイブリッドオートメーション



Androidハイブリッドアプリ



例として、 Hybridtestappを使用します

ハイブリッドアプリケーションを使用するには、 ここに示す変更を行う必要があります 。 Hybridtestappアプリケーションでは、既に適用されています。









例では、アプリケーションのフォームに入力しようとします。



  1. 次の必要な機能をインストールして、ハイブリッドアプリケーションを実行します



     File app=new File("C:\\Appium_test\\HybridtestApp.apk");// (On window platform) caps.setCapability(MobileCapabilityType.APP,app); caps.setCapability(MobileCapabilityType.APP_PACKAGE, "com.example.hybridtestapp"); caps.setCapability(MobileCapabilityType.APP_ACTIVITY, "com.example.hybridtestapp.MainActivity");
          
          





  2. 次に、WebViewで動作するようにコンテキストを変更する必要があります



     Set<String> contexts = driver.getContextHandles(); for (String context : contexts) { System.out.println(context); //   }
          
          





  3. スイッチ



     driver.context("WEBVIEW_com.example.hybridtestapp");
          
          





    または



     driver.context((String) contextNames.toArray()[1]);
          
          





  4. WebViewに移動した後、First Name入力フィールドを見つける必要があります。 名前ロケーターで検索します



     WebElement firstName=driver.findElement(By.name("fname")); firstName.sendKeys("test");
          
          





  5. そして姓



     WebElement lastName=driver.findElement(By.name("lname")); lastName.sendKeys("test");
          
          





  6. したがって、残りのフィールドに入力します



     WebElement age=driver.findElement(By.name("age")); age.sendKeys("26"); WebElement username=driver.findElement(By.name("username")); username.sendKeys("appiumTester"); WebElement password=driver.findElement(By.id("psw")); password.sendKeys("appium@123");
          
          





  7. そして、登録ボタンをクリックします



     WebElement registerButton=driver.findElement(By.id("register")); registerButton.click();
          
          





  8. TestNGを使用するスクリプト全体は次のようになります。



     public class TestAppIication { AndroidDriver driver; @BeforeClass public void setUp() throws MalformedURLException{ File app=new File("C:\\Appium_test\\HybridtestApp.apk"); caps.setCapability(MobileCapabilityType.APP,app); DesiredCapabilities caps = new DesiredCapabilities(); caps.setCapability(MobileCapabilityType.PLATFORM_VERSION, "4.4"); caps.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android"); caps.setCapability(MobileCapabilityType.DEVICE_NAME, "Moto X"); caps.setCapability(MobileCapabilityType.AUTOMATION_NAME, "Appium");// Selendroid   android  4.4 caps.setCapability(MobileCapabilityType.APP_PACKAGE, "com.example.hybridtestapp"); caps.setCapability(MobileCapabilityType.APP_ACTIVITY, "com.example.hybridtestapp.MainActivity"); driver = new AndroidDriver (new URL("http://127.0.0.1:4723/wd/hub"), caps); driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS); } @Test public void testExample(){ Set<String> contexts = driver.getContextHandles(); for (String context : contexts) { System.out.println(context); } driver.context((String) contexts.toArray()[1]); WebElement firstName=driver.findElement(By.name("fname")); firstName.sendKeys("test"); WebElement lastName=driver.findElement(By.name("lname")); lastName.sendKeys("test"); WebElement age=driver.findElement(By.name("age")); age.sendKeys("26"); WebElement username=driver.findElement(By.name("username")); username.sendKeys("appiumTester"); WebElement password=driver.findElement(By.id("psw")); password.sendKeys("appium@123"); WebElement registerButton=driver.findElement(By.id("register")); registerButton.click(); } @AfterClass public void tearDown(){ driver.closeApp(); } }
          
          





ハイブリッドiOSアプリ



WebViewAppアプリケーションの例を検討します









アプリケーションでの作業を試みます。



  1. 次の必要な機能をインストールして、ハイブリッドアプリケーションを実行します



     File app=new File("/Users/mhans/appium/ios/WebViewApp.app"); caps.setCapability(MobileCapabilityType.APP,app);
          
          





  2. 次に、入力フィールドを見つけて、目的のアドレスを指定する必要があります



     WebElement editBox=driver.findElement(By.className("UIATextField")); editBox.sendKeys("www.google.com");
          
          





  3. 検索して[Go]ボタンをクリックします



     WebElement goButton=driver.findElement(By.name("Go")); goButton.click();
          
          





  4. 次に、WebViewで動作するようにコンテキストを変更する必要があります



     Set<String> contexts = driver.getContextHandles(); for (String context : contexts) { System.out.println(context); }
          
          





  5. スイッチ



     driver.context("WEBVIEW_com.example.testapp");
          
          





    または



     driver.context((String) contextNames.toArray()[1]);
          
          





  6. それだけです Googleページで作業できます。 画像の石積みを開こうとしています:



     WebElement images=driver.findElement(By.linkText("Images")); images.click();
          
          





  7. テスト全体を開始する前に、プロキシを有効にする必要があります



     ios_webkit_debug_proxy -c <UDID >:27753 –d
          
          





    ポートは27753である必要があります



  8. TestNGを使用するスクリプト全体は次のようになります。



     public class TestAppIication { IOSDriver driver; @BeforeClass public void setUp() throws MalformedURLException{ DesiredCapabilities caps = new DesiredCapabilities(); File app=new File("/Users/mhans/appium/ios/WebViewApp.app"); caps.setCapability(MobileCapabilityType.APP,app); caps.setCapability(MobileCapabilityType.PLATFORM_VERSION, "8.1"); caps.setCapability(MobileCapabilityType.PLATFORM_NAME, "iOS"); caps.setCapability(MobileCapabilityType.DEVICE_NAME, "iPad"); caps.setCapability("udid","Real Device Identifier"); driver = new IOSDriver (new URL("http://127.0.0.1:4723/wd/hub"), caps); driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS); } @Test public void testExample(){ WebElement editBox=driver.findElement(By.className("UIATextField")); editBox.sendKeys("https://www.google.com"); WebElement goButton=driver.findElement(By.name("Go")); goButton.click(); Set<String> contexts = driver.getContextHandles(); for (String context : contexts) { System.out.println(context); } driver.context((String) contexts.toArray()[1]); WebElement images=driver.findElement(By.linkText("Images")); images.click(); } @AfterClass public void tearDown(){ driver.closeApp(); } }
          
          








以上です。 最後の章が残っています。ここでは、モバイルプラットフォーム向けの特定のユーザーアクションをシミュレートする方法について説明します。



All Articles