Axe DevTools Mobile 2025年11月26日リリースノート

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

2025年11月26日

Not for use with personal data

コンポーネントのバージョン

iOS

  • iOS Appium 2 ドライバー (axe-appium-xcuitest-driver v2.1.1)
    • (XCUITest v9.10.4 からフォーク)
  • iOS Appium 3 ドライバー (axe-appium3-xcuitest-driver v1.0.1)
    • (XCUITest v10.4.3 からフォーク)

更新方法: iOS Appium ドライバー

Android

  • Android Appium 2 ドライバー (axe-appium-uiautomator2-driver v2.1.1)
    • (UiAutomator2 v4.2.8 からフォーク)
  • Android Appium 3 ドライバー (axe-appium3-uiautomator2-driver v1.0.1)
    • (UiAutomator2 v5.0.1 からフォーク)

更新方法: Android Appium ドライバー

修正内容

Appium ドライバー

  • Axe Developer Hub統合体験の改善により、単一のテストセッションからすべてのスキャンを自動的に1つのレポートにグループ化します。

既知の問題

以下の問題のいずれかを経験している場合は、helpdesk@deque.comまたはsupport.deque.comでご連絡ください。 問題が解決された際や、記載されていない回避策が特定された場合にはお知らせします。

important
  • Axe DevTools Mobileの自動テストは、ネイティブiOS、ネイティブAndroid、およびReact Nativeアプリケーションで実行されます。 あなたの技術スタックに合わせたアクセシビリティテストソリューションについては、Dequeの担当者にお問い合わせください。
  • WebビューまたはレンダリングされたPDFからも結果が得られる場合がありますが、Webに対して最も包括的なアクセシビリティテストを行うには、Axe DevTools for WebまたはAxe Monitorを使用することを強くお勧めします。

iOS

不正確な isVisible XCTest のプロパティ

AppleのアクセシビリティAPIは、WKWebView内のWebコンテンツを「isVisible」として誤って報告する場合があります。これは、アクセシビリティシステムがWKWebViewコンテナ自体が表示されているかどうかを確認するためであり、そのWebコンテンツが実際に視界に入っており、ユーザーに認識可能であるかどうかを確認するものではありません。

iOS 26 のステッパーに関するアクセシビリティバグ

iOS 26 には、デフォルトのステッパーボタンがAssistive Technologyによって「無効」と発表されないアクセシビリティバグがあります。そのため、iOSのルールではこれらのボタンを有効としても認識します。Appleにバグ報告をしていますが、解決するまで、以下のルールが無効なステッパーボタンに対して報告する可能性があります: AssociatedTextInaccessibleAction、および ColorContrastをご参照ください。

Appleがこのバグを修正するまでの解決策は、[ルールを無視](ios-ignore-rule)することです。デフォルトのステッパーボタンには「Decrement」と「Increment」の識別子があり、必要に応じて識別子で無視することができます。

Color Contrast rule does not run when text and background colors are the same

Our Color Contrast rule depends on Machine Learning to detect text, which ensures that the text being scanned is visible to users of your application. In cases where the text contained in a view is the same color as the background, our Machine Learning algorithm is unable to detect if any text is present, so the Color Contrast rule does not run on this view.

iOS Analyzer 1.4.7 で物理デバイスでのスキャンを実行できない

iOS Analyzer 1.4.7 では設定が原因でスキャンが実行されず「テスト失敗」と表示されます。物理デバイスでスキャンを実行するには、 最新のiOS Analyzerプロジェクトに更新してください。

2.8.1 でのバンドルIDテスト時のAnalyzerプロジェクトエラー

バンドル識別子でアプリケーションをテストする機能がバージョン2.8.1で破損しており、「 "No target application path specified via test configuration: ..."」というエラーが発生しました。エラーを解決するには、2.8.2以降または最新バージョンに更新してください。 iOS Analyzer プロジェクト内の最新に更新してください。

Analyzer Project v1.2.0 & SDK v2.12.3 における "AxeResultをシリアライズできませんでした" エラー

このバージョンのアナライザーとSDKで一部のアプリケーションをスキャンすると、 "Could not Serialize AxeResult" エラーです。エラーを解決するには、最新バージョンにアップデートしてください。 最新のiOS Analyzerプロジェクトにアップデートしてください。最新のiOS SDKにアップデートしてください。

誤検出: SwiftUI & クロスプラットフォームアプリのLabelInNameおよびLabelAtFront

いくつかの画面では、#1622により、間違ったassociatedTextプロパティが見つかって誤検出が報告される可能性があります。

iOS 15 Proシミュレータで動作しないDynamic Typeルール

iPhone 15 Proシミュレータに影響を与える問題があり、Dynamic Typeルールが実行されません。Dynamic Typeルールにオプトインしている場合、iPhone 15 Proシミュレータを使用してテストすることはできません。Appleにバグ報告済みです。

ネストされたコントロールに対するルール

私たちのルールの改善を検討していると、XCTestではネストされたコントロールがアクセシビリティツリーに返されないことが判明しました。Appleにバグ報告済みです。 (#1110)

UIKitアプリのImageView名前ルールレビュー結果が必要

UIKitアプリでは、 accessibilityLabel のない画像は、デフォルトでは支援技術でフォーカス可能ではありません。
Appleからフォーカス可能性をチェックするために使用するプロパティは、 accessibilityIdentifier が画像に設定されていると不正確な場合があります。この予期しない動作のため、UIKitアプリのImageView Name問題の結果はレビューが必要であると報告されます。Appleにバグ報告済みです。 (#1633)

誤検出: Scroll View、Label In Name、Label at Front、v2.11.0のImage View Name & ActiveControlName

これらの誤検出について修正をアクティブに行っており、修正がリリースされるたびにこのリストを更新します。

In Scroll View
バナービヘイビアエレメント内のテキストに問題が報告される場合があります。これらのエレメントをより大きなテキストが必要な方々に利用可能にするには、 UILargeContentViewerを使用してください。 (#622)

v2.11.0 Image View Name & Active Control Name
UIImageViewが accessibilityIdentifier セットされているにもかかわらずVoiceOverでフォーカス可能でない場合、かつインナービューにフォーカス可能なコントロールがネストされている場合、UIImageViewでActiveControlNameが誤検出を報告することがあります。 accessibilityIdentifier を削除すると問題が解決します。Appleにバグ報告済みです。 (#1633)

Label In Name and Label At Front
これらの2つのルールは、ルールの状態を判断するために、コントロールの表示されているラベルを近隣のエレメントの中から探します。一部のビュー階層では、誤った近隣のテキストが検出され、これらのルールの失敗を引き起こす可能性があります。 (#1622)

Android

テキストと背景色が同じ時に動作しないColor Contrastルール

私たちのColor Contrastルールはテキストを検出するために機械学習に依存しており、アプリケーションのユーザーにとってテキストが見える状態であることを保証します。ビューに含まれるテキストが背景と同じ色の場合、機械学習アルゴリズムがテキストが存在するかを検出できず、このビューではColor Contrastルールが実行されません。

EditTextName Android 7 (SDK 24-25)で

XMLで書かれたアプリでヒントテキスト機能を利用すると、 EditTextName ルールで誤検出が発生する可能性があります。ヒントテキストはAndroid 8 (SDK 26)で初めて導入されました。XMLアプリでこの要素を使用すると、ヒントテキストがテキスト入力フィールドの値に割り当てられます。より新しいバージョンのAndroidでは、このエクスペリエンスをよりアクセシブルにすることができます。

この問題を克服するために、私たちの最初の推奨は、テストをより新しいバージョンのAndroidで実行することです。しかし、古いバージョンのAndroidでもアプリがアクセス可能であることが重要な場合は、 hintText 機能の使用を避けることを検討してください。正式にはサポートされていません。

Androidで隠されたビューが結果を返す

画面上の他のビューの後ろに隠れているビューの結果が表示されることがあります。 これらの隠れたビューは支援技術では利用できませんが、Axe DevTools Mobileは依然としてそれらを問題として報告します。

この複雑な問題の修正に取り組んでいます。その間、TalkBackがこれらのビューに到達できない場合は、対応する問題を無視することができます。アクセシビリティを確保するための修正は不要です。

ML Kitテキスト検出の実行中にエラー

ML Kitのテキスト検出は、多くのAxe DevTools Mobileルールにおいて、結果の精度を確保するために必要です。 ML Kitライブラリは、Axe DevTools Mobileを自動化されたEspressoやUIAutomatorテストで参照するときに自動的にインポートされるはずです。 しかし、場合によっては自動インポートが行われず、logcatに次のエラーが表示されることがあります:

Axe DevTools Android: Error while running mlKit Text Detection: MlKitContext has not been initialized.

この問題を克服するためには、ML Kitライブラリをプロジェクトに手動でインポートする必要があります。アプリケーションの build.gradle ファイルで、dependenciesの下に次のコードを追加してください:

implementation 'com.google.mlkit:text-recognition:16.0.1'
Touch Target SpacingとJetpack Compose

Touch Target Spacingルールは、Jetpack Composeで書かれたスライダーコンポーネントでは現在実行されていません。現時点では特に対策は不要ですが、すぐに修正される予定です!

API 30でローカルに結果を保存する際のエラー

Android API 30で、ローカルに結果を保存しようとする場所の1つで権限エラーが発生します。このエラーが表示されてもJSONファイルとして結果は保存されます。このエラーは、次のブロック内のコードをコメントアウトすることで抑制できます:
def clearDirectoryTask = task('clearDirectoryTask', type: Exec, group: 'reporting') {
executable "${android.getAdbExecutable().toString()}"
args 'shell', 'rm', '-r', '/storage/emulated/0/Documents/AxeTestCases'
// finalizedBy {
// fetchAndroidFolderAxeReportsTask
// }
}

このコードは、他のAPIレベルでローカル保存する際に問題を引き起こすため、API 30の場合のみコメントアウトしてください。

ハイブリッドアプリおよびクロスプラットフォームアプリでのスクロール検出

一部のハイブリッドおよびクロスプラットフォームアプリでは、スクロールビュー内の項目が画面外に少しでも出ていると、予期しない結果が返されることがあります。アクセシビリティをテストするためには、スキャンを実行する前に要素が完全に画面上に表示されていることを確認してください。

Analyzerアプリ: フローティングアクションボタンが消える

API 31(Android 12)で導入された、システム外のオーバーレイを非表示にする機能があります。 Axe Analyzerアプリを利用するためには、この設定がオンになっていないことを確認してください。この機能をセキュリティ強化のために利用することを選んだ場合、テストデータを安全に利用できる内部テストビルドでは、安全上の懸念を排除するためにオフのままにしておくことをお勧めします。 Note: this setting does not affect Google's accessibility scanner app as it's considered a system overlay.

Axe Accessibility Analyzerアプリを利用するには、メソッドへの呼び出しを更新してください。 setHideOverlayWindows(true) に更新してください。 setHideOverlayWindows(false) 影響を受けたアクティビティウィンドウで。

ダッシュボードでスクリーンショットが欠けている(黒いボックス)

Axe DevTools for Mobileの機能をすべてアンロックするには、スクリーンショットが有効であることを確認してください。セキュリティ上の懸念を避けるため、モックデータを使用したアプリのデバッグまたはテストバージョンでスクリーンショットを有効にすることをお勧めします。 詳細は、私たちのガイドをご覧ください。 Androidアプリでスクリーンショットを有効にする方法をご覧ください。

`minifiedEnabled`がtrueに設定されているとクラッシュする

ビルドを最小化した場合、Axe DevToolsライブラリへのログイン時にアダプターが見つからないと報告するエラーログでクラッシュが発生します。Axe DevToolsを実装したデバッグビルドではminifyを無効にしてください。(#729)

r8を有効にしたビルドでエラーが発生する

r8を有効にしたビルドは、axeDevToolsライブラリを縮小しようとして次のようなエラーを引き起こす可能性があります:
Caused by: java.lang.NullPointerException: throw with null exception
at g.b.b.a$a.a(Unknown Source:1)
at g.b.b.a$a.a(Unknown Source:0)
at g.b.b.a.a(AccessToken.java:190)
このエラーを解決するには、次の行をProGuardファイルに追加してaxeDevToolsのクラスを保持してください:
keep class com.deque.** { *; }

次のようなエラーメッセージ:
Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)
または: No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?

Compose APIは廃止予定ですので、 レイアウト非依存API を使用して更新を続けてください。Compose APIを継続使用し、`Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)`や`No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?`のようなエラーが発生した場合は、 Compose setTestTag APIをご参照ください。

ログメッセージ:MlKitContext has not been initialized

このメッセージが表示された場合、人工知能を使用しているルールでは、いくつかのルール結果が予想通りに返さないことがあります。影響を受けるルールは、カラーコントラスト、フォーカステキスト、およびネストされた要素名を含みます。(#841)

MAUI: Edit Text Nameルール

AndroidエコシステムでのMAUIアプリのアーキテクチャ制限により、SDKバージョン5.5.0以降で失敗が疑われる場合、このルールはダッシュボードで確認が必要と表示されます。このケースでは正しい動作を手動で確認してください。

ネイティブAndroid: カスタムダイアログ/モーダル

ネイティブコントロールを拡張しないカスタムダイアログやモーダルを実装する際、モーダルの背後にあるビューに対する結果を取得する可能性があります。この場合、当社のツールをこれらのカスタムモーダルまたはダイアログに対して実行するのではなく、それらが支援技術と望ましい形で動作することを手動で確認することをお勧めします。

ウェブダッシュボード

スクリーンショットが見つかりません

スキャン詳細ページにスクリーンショットが表示されない場合、アプリがスクリーンショットの取得を妨げている可能性があります。これは通常、製品アプリケーションでのセキュリティ上の理由です。 Axe DevTools Mobile ダッシュボードでの完全な機能を可能にするために、この要件をテストビルドで削除することを検討してください。

一部のAndroidスキャン名はフォーマットされていません

一部のAndroidスキャン名は、デフォルトで画面タイトルに設定されている場合、バンドル識別子を含む完全なクラス名として表示されます。将来のリリースでは、画面タイトルがより読みにくい名前としてフォーマットされるように解決されます。回避策として、ダッシュボードやフレームワークからスキャン名を設定できます。(#1643)