Digital.ai での Appium テスト

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

Digital.ai を使用して、Appium テストにアクセシビリティ スキャンを追加しましょう!

Not for use with personal data

Deque は Digital.ai と提携し、既存の自動化テスト ワークフローにアクセシビリティ テストを導入します。axe DevTools Mobile を使用して Appium テストにアクセシビリティ スキャンを追加し、Digital.ai デバイスでテストを実行してから、axe Developer Hubで結果を確認します。

前提条件:
  • Digital.ai Continuous Testing へのアクセス Digital.ai Continuous Testing
  • Digital.ai Application Manager にアプリケーションをアップロード Digital.ai Application Manager
  • Deque API キー
  • Appium バージョン 2.11.3 以上でのテストの実行
  • AxeUIAutomator または AxeXCUITest Appium ドライバーを使用したテスト (Digital.ai により事前インストール済み)

アクセシビリティ スキャンの実行方法

Digital.ai は、Appium サーバーに axe Appium ドライバーを事前インストール済みです。これらのドライバーにより、Appium テストからアクセシビリティ スキャンを実行できます。Deque の AxeUiAutomator2 および AxeXCUITest ドライバーは UiAutomator2 および XCUITest ドライバーからフォークされていますが、これらのドライバーの基本的な機能を変更することはありません。テストは期待通りに実行され、さらにアクセシビリティ スキャンを実行する機能が追加されます!

Appium テストをアクセシビリティ テスト用に構成するための主なステップは次のとおりです。

  1. オートメーション名を AxeUiAutomator2 に設定します(Android の場合)または AxeXCUITest に設定します(iOS の場合)。( Axe プレフィックスに注意。)
  2. 認証には Deque API キーを提供します。
  3. スクリプトを実行して、 mobile: axeScan テストの中でアクセシビリティ スキャンを行いたいそれぞれの場所に配置します。
  4. Digital.ai デバイスでテストを実行した後、 axe Developer Hubで結果を確認します。

当社の Appium セットアップガイド を参照して、設定のカスタマイズ方法やチームに最適な方法でアクセシビリティ スキャンの結果を活用する方法を学び、 Appium サンプルテストの完全なリストを確認してください。セットアップガイドと例は一般的なものであり、Digital.ai 統合に必要なすべてを含んでいるわけではありません。

以下の例は、Digital.ai プラットフォームを使用したアクセシビリティ テスト用に Appium テストを設定する方法を示します。これらの例は Java で書かれていますが、Appium は複数のプログラミング言語をサポートしています。

Android

@BeforeMethod
public void setUp() throws MalformedURLException {
      desiredCapabilities.setCapability("accessKey", ACCESS_KEY); // Digital.ai's Access Key
      desiredCapabilities.setCapability("deviceQuery", "@os='android'");
      desiredCapabilities.setCapability("appium:automationName", "AxeUiAutomator2");
      desiredCapabilities.setCapability("app", "cloud:com.experitest.ExperiBank/.LoginActivity");
      desiredCapabilities.setCapability("appPackage", "com.experitest.ExperiBank");
      desiredCapabilities.setCapability("appActivity", ".LoginActivity");
      desiredCapabilities.setCapability("appiumVersion", "2.16.2");
      driver = new AndroidDriver(new URL("https://<your_cloud_url>/wd/hub"), desiredCapabilities);
      Map<String, Object> settings = new HashMap<>();
      List<String> tags = new ArrayList<>();
      settings.put("apiKey", <DEQUE_API_KEY>); // Deque API Key
      settings.put("projectId", <DEVHUB_PROJECT_ID>) // axe Developer Hub Project ID
      settings.put("scanName", "Axe driver"); // a customized scan name to better identify scans within the dashboard.
      settings.put("tags", tags); // an array of strings to apply to scans as tags.
      driver.executeScript("mobile: axeScan", settings);    
  }

iOS

@BeforeMethod
public void setUp() throws MalformedURLException {
      desiredCapabilities.setCapability("accessKey", ACCESS_KEY); // Digital.ai's Access Key
      desiredCapabilities.setCapability("deviceQuery", "@os='ios'");
      desiredCapabilities.setCapability("appium:automationName", "AxeXCUITest");
      desiredCapabilities.setCapability("app", "cloud:com.experitest.ExperiBank");
      desiredCapabilities.setCapability("bundleId", "com.experitest.ExperiBank");
      desiredCapabilities.setCapability("appiumVersion", "2.16.2");
      driver = new IOSDriver<>(new URL("https://<your_cloud_url>/wd/hub"), desiredCapabilities);
       Map<String, Object> settings = new HashMap<>();
      List<String> tags = new ArrayList<>();
      settings.put("apiKey", <DEQUE_API_KEY>); // Deque API Key
      settings.put("projectId", <DEVHUB_PROJECT_ID>) // axe Developer Hub Project ID
      settings.put("scanName", "Axe driver"); // a customized scan name to better identify scans within the dashboard.
      settings.put("tags", tags); // an array of strings to apply to scans as tags.
      driver.executeScript("mobile: axeScan", settings);  
  }