Perfectoでの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

モバイルアプリケーションのアクセシビリティテストをAppiumで実行し、Perfectoでサポート開始!

Not for use with personal data

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

必要条件:

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

Perfectoは、AppiumサーバーにAxe Appiumドライバーをプリインストールしています。これらのドライバーにより、Appiumテストからアクセシビリティスキャンを実行できます。DequeのAxeUiAutomator2およびAxeXCUITestドライバーはUiAutomator2およびXCUITestドライバーからフォークされています。これらのドライバーのコア機能を変更することなくフォークしています。テストは期待通りに実行され、アクセシビリティスキャンを行うための追加の機能が得られます!

アクセシビリティテストのためにAppiumテストを設定する主要な手順は以下です:

  1. 自動化の名前をAndroidの場合はAxeUiAutomator2、iOSの場合はAxeXCUITestに設定します。(Axeプレフィックスに注意)
  2. 認証のためにDeque APIキーを提供します。
  3. テスト内でアクセシビリティスキャンを行いたい箇所ごとにスクリプトmobile: axeScanを実行します。
  4. Perfectoデバイスでテストを実行した後、Axe Developer Hubで結果を確認します。

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

以下のコードを参照し、PerfectoプラットフォームでのアクセシビリティテストのためにAppiumテストを設定し、アクセシビリティスキャンを実行してください。

プラットフォームに基づいてautomationName能力を設定してドライバーを有効にします。

Androidの設定

automationNameAxeUiAutomator2に設定する必要があります。appPackageの値はテスト対象のAndroidアプリのパッケージ名です。

{ 
  "automationName": "AxeUiAutomator2", // Note the 'Axe' prefix.
  "appPackage": "<your-app-package>" 
}

iOSの設定

automationNameAxeXCUITestに設定する必要があります。bundleIdの値はテスト対象のiOSアプリのバンドル識別子です。

{ 
  "automationName": "AxeXCUITest",  // Note the 'Axe' prefix.
  "bundleId": "<your-app-bundle-id>" 
}

アクセシビリティのスキャン

Appiumは複数のプログラミング言語をサポートしています。以下のJavaScriptスニペットは、Axe DevTools MobileのAPIキーなど、Axe DevTools Mobileに必要な機能をテストスクリプトに追加する方法を示しています。スキャンのトレーサビリティを向上させるために、カスタム名を作成することができます。mobile: axeScanコマンドを使用してアクセシビリティスキャンをトリガーします。

const axeSettings = { 
  apiKey: '<deque-api-key>', // axe DevTools Mobile API key
  projectId: '<devhub-project-id>', // Recommended: Use the Project ID you created in Developer Hub to upload results
  scanName: '<your-scan-name-here>', // Optional: Customize the scan name
  tags: ['tag-one', 'tag-two'] // Optional: Add tags, to more easily find and group scans
}; 

const result = await driver.execute('mobile: axeScan', axeSettings);