axe DevTools Mobile 2024年8月14日 リリースノート
2024年8月14日
コンポーネントのバージョン
- iOS SDK (axeDevToolsXCUI v2.12.3)
- iOS アナライザー (axe-devtools-mobile-analyzer v1.2.0)
- Android SDK (axe-devtools-android v5.5.2)
- Android アナライザー (axe Accessibility Analyzer v1.8.4)
更新方法: iOS SDK, iOS アナライザー, Android SDK, Android アナライザー
新機能
ダッシュボード
スキャンおよび問題詳細画面の改善
axe DevTools Mobile ダッシュボードのスキャンおよび問題詳細画面を更新し、使いやすくし、将来の機能強化に備えました。画面は見た目が変わりましたが、重要な機能は引き続き利用可能です。フィードバックがありますか?メールでお知らせください: mobile-feedback@deque.com
iOS
アナライザープロジェクトに埋め込まれたルールエンジン
iOS アナライザーの Xcode プロジェクトで axeDevToolsXCUI を取得するための Swift Package Manager の依存性を削除しました。XCUI フレームワークの最新バージョンは、各リリースでアナライザーに埋め込まれました。この変更により、アナライザープロジェクトの更新が容易になり、最新のルールエンジンを確実に使用できます。
修正
Android
- Android API レベル34でデバイスが再起動するとアナライザーアプリがクラッシュする問題を修正
- カラーコントラストおよびタッチターゲットサイズのルールに対する精度を向上し、誤検知を減らすための拡張と改善
- 使用データが axe Reports に利用可能になりました
iOS
- SwiftUI のビューがユーザーに表示されているかどうかの検出方法を改善し、さまざまなルールに対する誤検知を減らし、精度を向上した
- 以下のルールで精度を向上し、誤検知を減らすための拡張と改善を行った: アクセスできないアクション、フォーカス可能なテキスト、画面タイトル、ネストされた要素名
既知の問題
以下の問題が発生した場合は、 helpdesk@deque.com または support.deque.comにご連絡ください。解決された際や、記載されていない代替案が判明した場合に通知いたします。
- axe DevTools Mobile の自動テストは、ネイティブ iOS、ネイティブ Android、そして React Native アプリケーションで動作します。技術スタックに応じたアクセシビリティテストソリューションについては、お客様の Deque 担当者にご相談ください。
- Web ビューやレンダリングされた PDF からもある程度の結果を得られるかもしれませんが、Web のアクセシビリティテストを総合的に実施するには、axe DevTools for Web または axe Monitor を使用することを強くお勧めします。
axe DevTools Mobile for iOS
アナライザープロジェクトのエラーと 2.8.1 のバンドル ID でのテスト
バンドル識別子でのアプリケーションテストの機能がバージョン 2.8.1 で壊れており、「テスト構成で指定されたターゲットアプリケーションパスがありません:...」というエラーが発生しました。このエラーを解決するには、2.8.2 または最新バージョンに更新してください。 iOS アナライザープロジェクト内で最新に更新してください。
SwiftUI およびクロスプラットフォームアプリでの LabelInName と LabelAtFront の誤検知
誤った associatedText プロパティが見つかったため、一部の画面で LabelInName と LabelAtFront の誤検知が報告されることがあります (#1622)
iOS 15 Pro シミュレーターで Supports Dynamic Type ルールが機能しない
iPhone 15 Pro シミュレーターに影響を与える問題があり、Supports Dynamic Type ルールが実行されません。Supports Dynamic Type ルールにオプトインしている場合、iPhone 15 Pro シミュレーターを使用してテストすることはできません。Apple にバグが報告されています。
ネストされたコントロールに対するルール
ルールの改善を検討する中で、XCTest ではアクセシビリティツリーにネストされたコントロールが返されないことが判明しました。Apple にバグが報告されています。 (#1110)
UIKit アプリの ImageView 名ルールにはレビュー結果が必要
UIKitアプリでは、`accessibilityLabel`が設定されていない画像は、デフォルトでは支援技術でフォーカス可能にはなりません。
Appleから提供されるフォーカス可能性を確認するためのプロパティは、画像に`accessibilityIdentifier`が設定されていると正確でない可能性があります。この予期しない動作のため、UIKitアプリでのImageView Nameの問題の結果は、見直しが必要と報告されます。Appleにはバグ報告が提出されています。 (#1633)
誤検知: スクロールビュー内のラベルが名前に含まれている場合、先頭にラベル、そしてv2.11.0ではImage View NameとActiveControlName
以下の誤検知に対する修正に積極的に取り組んでおり、修正がリリースされ次第このリストを更新します。
In Scroll View
バナー動作する要素内のテキストに関する問題が報告されることがあります。これらの要素を、大きなテキストを必要とする人が利用できるようにするには、次の方法を使用してください。 UILargeContentViewer(#622)
v2.11.0 Image View Name & ActiveControlName
UIImageViewに`accessibilityIdentifier`が設定されているがVoiceOverでフォーカスできず、内部にフォーカス可能なコントロールがネストされている場合、ActiveControlNameはUIImageViewに誤検知を報告することがあります。`accessibilityIdentifier`を削除すると問題が解決します。Appleにはバグが報告されています。 (#1633)
Label In Name and Label At Front
これらの2つのルールは、ルールステータスを判断するために近くの要素間でコントロールの表示ラベルを探します。あるビューの階層では、誤った近くのテキストが検出され、これらのルールが失敗することがあります。 (#1622)
axe DevTools Mobile for Android
スクリーンショットがダッシュボードで黒いボックスとして表示されます
axe DevTools for Mobileのすべての機能をアンロックするには、スクリーンショットを有効にしてください。セキュリティ上の懸念を避けるために、模擬データを使用したアプリのデバッグまたはテスト版でスクリーンショットを有効にすることをお勧めします。詳細については、 Androidアプリでスクリーンショットを有効にする方法をご覧ください。
`minifiedEnabled` がtrueに設定されているときのクラッシュ
ビルドを縮小する場合、axe DevToolsライブラリにログインしようとすると、アダプターが見つからないというエラーログが報告され、クラッシュが発生します。axe DevToolsを実装したデバッグビルドでは縮小を無効にしてください。 (#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)
To resolve this error add the following line to your ProGuard file to keep axeDevTools classes:keep class com.deque.** { *; }
次のようなエラーメッセージ:
Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)
または: No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?
`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: テキスト名ルールの編集
AndroidエコシステムでレンダリングされるMAUIアプリアーキテクチャの制約により、SDKバージョン5.5.0以降で失敗が疑われる場合、編集テキスト名ルールはダッシュボードで見直しが必要と表示されます。このケースでは、正しい動作を手動で確認してください。
ネイティブAndroid: カスタムダイアログ/モーダル
ネイティブコントロールを拡張しないカスタムダイアログやモーダルを実装している場合、モーダルの背後にあるビューの結果が出力されることがあります。この場合、これらのカスタムモーダルまたはダイアログに対して当社のツールを実行せず、代わりに手動で確認して、支援技術とともに望ましい形で動作することを確認することをお勧めします。
axe DevTools Mobileダッシュボード
スクリーンショットが存在しない
スキャン詳細ページにスクリーンショットが存在しない場合、アプリがスクリーンショットを撮るのを防いでいる可能性があります。多くの場合、これは生産アプリケーションにおけるセキュリティ上の理由によるものです。axe DevTools Mobileダッシュボードでの完全な機能を許可するために、テストビルドに対してこの要件を削除することを検討してください。
一部のAndroidスキャン名がフォーマットされていない
デフォルトで画面タイトルに設定されている一部のAndroidスキャン名は、バンドル識別子を含む完全なクラス名として表示されます。今後のリリースでは、画面タイトルがより読みやすい名前としてフォーマットされるように解決されます。回避策として、ダッシュボードまたはフレームワークからスキャン名を設定することができます。 (#1643)
axe DevTools Mobile for Appium
誤検知: Active View Name, Touch Target Spacing
以下の誤検知に対する修正に積極的に取り組んでおり、修正がリリースされ次第このリストを更新します。
Active View Name
Appiumプラットフォームから利用できる情報の制約により、ボタン要素にラベルを提供するためのプロパティを使用している場合、Active View Nameに対する誤検知が確認されています。 labeledBy プロパティを使用しています。
Touch Target Spacing on iOS platform for SwiftUI & React Native apps
より大きなコントロールは、24pt x 24ptの最小要件を超えている場合に、Touch Target Spacingに失敗することがあります。 (#411)
誤検出: Android React Nativeでのアクセス不可なアクション
AndroidプラットフォームでReact Nativeアプリをスキャンする際に、この新しいルールに対して矛盾ある結果が見られるかもしれません。一部のビューにはネストされたボタン要素があり、親ボタンでは失敗するが、子ボタンでは合格する結果となります。 (#407)
React Native: 名前にラベル & 先頭にラベル
Appiumプラットフォームから利用可能な情報の制約により、React Nativeで構築されたアプリに対して、名前にラベル & 先頭にラベルのルールを実行することができないことが確認されています。解決策を模索しており、将来のリリースで修正を期待しています。
React Native & .NET MAUI: 過去の画面が表示されるビュー階層を確認
時々、Appiumのページソースプロパティがスキャン間で更新されるのに余分な時間が必要です。これが発生した場合、過去の画面のビュー階層がダッシュボードのインスペクト機能を使用する際に表示されます。この問題を修正するには、アクセシビリティスキャンを促進するために、ページソースAPIを呼び出す前に少しのタイムアウトを追加してください。 例:
await driver.pause(1000);
const result = await driver.getPageSource();
制約: Androidの装飾画像に関するImage View Name
Appiumプラットフォームからの情報の制約により、Androidにおける装飾画像の成功基準を正確にテストすることができないと確認されています。照会可能な名前のない画像の結果はダッシュボードで「要検討」と表示され、さらなる分析が必要です。
