Appiumプラグインから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

axe DevTools Mobile for Appiumの最新変更に移行するための早期採用者向けガイド。

Not for use with personal data

注: もしaxe DevTools Mobile for Appiumを始めたばかりの場合は、 セットアップガイドに進んでください。

業界をリードするAppiumのアクセシビリティテストソリューション向けに、2つの新しいAppiumドライバーを発表できることを嬉しく思います。これらのドライバーは実績のあるSDKによって強化されており、私たちのすべてのaxe DevTools Mobileコンポーネントで得られるのと同じ堅牢で高精度な結果を提供します。AppiumドライバーはDequeの利用可能なすべてのモバイルルールをカバーしており、セットアップに数分しかかかりません。

もしaxe DevTools Mobile Appiumプラグインのバージョン2.0.0+を実装した場合、このガイドに従ってドライバーソリューションへの切り替えを簡単に行ってください。

プラグインをアンインストールする

appium plugin uninstall axeDevToolsMobile

ドライバーをインストールする

必要なドライバーをコマンドラインを通してAppiumインスタンスにインストールします:

iOSテスト用のaxe XCUITestドライバー

appium driver install --source=npm @axe-devtools/axe-appium-xcuitest-driver

いつでもアンインストールが必要な場合は、コマンドラインを通してアンインストールできます:

appium driver uninstall axexcuitest

Androidテスト用のaxe UIAutomator2ドライバー

appium driver install --source=npm @axe-devtools/axe-appium-uiautomator2-driver

いつでもアンインストールが必要な場合は、コマンドラインを通してアンインストールできます:

appium driver uninstall axeuiautomator2

Appiumを通してアクセシビリティテストを始める

通常通りにAppiumサーバーを開始します:

appium

テストを構成する

Appiumプラグインのセットアップコードの多くは、Appium axeドライバーでも再利用できます。

更新

  1. ドライバーソリューションによる新機能として、 automationName の能力を更新します。 AxeXCUITest iOSテスト用、または AxeUiAutomator2 Androidテスト用です。

  2. 競合を避けるために、 driver.execute コードを更新する必要があります: await driver.execute('mobile: axeScan', axeSettings), axeSettingsオブジェクトは同じオブジェクトで、 apiKey およびその他のカスタマイズを含んでいます。

完全な例

Pythonテストを使用したaxe UiAutomator2ドライバーの例

以下の例はPythonで書かれていますが、他のAppiumクライアントライブラリにもロジックを転用できます。


from appium import webdriver
from appium.options.android import UiAutomator2Options
from appium.webdriver.appium_connection import AppiumConnection

class DemoWithAxeDevToolsMobile:

    def setup(self):
        success = True
        desired_caps = {}
        # Add your required capabilities for testing:
        desired_caps['platformName'] = 'Android'
        desired_caps['appActivity'] = "com.app.package.MainActivity"

        # Add axe DevTools Mobile required capabilities for testing:
        desired_caps['appPackage'] = "com.app.package"
        desired_caps['automationName'] = 'AxeUiAutomator2'

        # Initialize Appium Server Connection
        options = UiAutomator2Options().load_capabilities(desired_caps)
        self.driver = webdriver.Remote('http://localhost:4723', options=options)

    def runAccessibilityScan(self):
        settings = {}
        settings['apiKey'] = "<your-api-key-here>"
        return self.driver.execute_script('mobile: axeScan', settings)


demo = DemoWithAxeDevToolsMobile()
demo.setup()

# <Navigate To Screen>
demo.runAccessibilityScan()

# <Navigate To Another Screen>
demo.runAccessibilityScan()

Pythonテストを使用したaxe XCUITestドライバーの例

以下の例はPythonで書かれていますが、他のAppiumクライアントライブラリにもロジックを転用できます。


from appium import webdriver
from appium.options.ios import XCUITestOptions
from appium.webdriver.appium_connection import AppiumConnection

class DemoWithAxeDevToolsMobile:

    def setup(self):
        success = True
        desired_caps = {}
        # Add your required capabilities for testing:
        desired_caps['platformName'] = 'iOS'

        # Add axe DevTools Mobile required capabilities for testing:
        desired_caps['bundleId'] = "com.bundle.identifier"
        desired_caps['automationName'] = 'AxeXCUITest'

        # Initialize Appium Server Connection
        options = XCUITestOptions().load_capabilities(desired_caps)
        self.driver = webdriver.Remote('http://localhost:4723', options=options)

    def runAccessibilityScan(self):
        settings = {}
        settings['apiKey'] = "<your-api-key-here>"
        return self.driver.execute_script('mobile: axeScan', settings)

demo = DemoWithAxeDevToolsMobile()
demo.setup()

# Navigate To Screen
demo.runAccessibilityScan()

# Navigate To Another Screen
demo.runAccessibilityScan()