Axe DevTools Mobile 2024年9月18日リリースノート
2024年9月18日
コンポーネントのバージョン
- iOS SDK (axeDevToolsXCUI v2.12.4)
- iOS アナライザー (axe-devtools-mobile-analyzer v1.4.0)
- iOS Appium ドライバー (axe-appium-xcuitest-driver v1.0.0)
- Android Appium ドライバー (axe-appium-uiautomator2-driver v1.0.0)
更新方法: iOS SDK、iOS アナライザー
新機能
Appium ドライバー 🎉
業界をリードするAppiumアクセシビリティテストソリューションに向けて、2つの新しいAppiumドライバーを発表できることを嬉しく思います。弊社のドライバーは、信頼性の高いSDKによって実現され、Axe DevTools Mobileコンポーネント全てで得られるのと同じ堅牢で高精度な結果を提供します。Appiumドライバーは、Dequeの全てのモバイルルールをカバーし、セットアップはわずか数分で完了します。
現在Axe DevTools Appiumプラグインを利用していますか?移行ガイドをチェックして新しいドライバーを開始してください。
修正点
iOS SDK および アナライザー
- 色のコントラストルールの精度に関するいくつかの改善
- 一部のスキャンが失敗する原因となっていたシリアル化のエラーを修正
既知の問題
以下の問題に該当する場合は、helpdesk@deque.comまたはsupport.deque.comまでご連絡ください。問題が解決した際や、リストされていない回避策が特定された際にお知らせいたします。
- Axe DevTools Mobile自動テストは、ネイティブiOS、ネイティブAndroid、およびReact Nativeアプリケーションで動作します。お使いの技術スタックにおけるアクセシビリティテストソリューションについては、お近くのDeque担当者にお問い合わせください。
- WebビューやレンダリングされたPDFからも多少の結果が得られるかもしれませんが、Webの包括的なアクセシビリティテストには、Axe DevTools for WebやAxe Monitorを利用することを強くお勧めします。
iOS
アナライザープロジェクトにおけるエラーと2.8.1でのバンドルIDによるテスト
バンドル識別子によるアプリケーションのテスト機能がバージョン2.8.1で壊れており、「テスト構成で指定されたターゲットアプリケーションパスがありません:...」というエラーが発生していました。このエラーを解決するには、2.8.2または最新バージョンに更新してください。 iOSアナライザープロジェクトで最新バージョンに更新します。
SwiftUIとクロスプラットフォームアプリでのラベルインネームおよびラベルアットフロントの誤検出
一部の画面で、#1622 に基づいて関連する間違ったテキストプロパティが発見され、ラベルインネームおよびラベルアットフロントで誤検出される可能性があります
iOS 15 Proシミュレータで動作しないダイナミックタイプルールのサポート
iPhone 15 Proシミュレータに影響を与える問題があり、ダイナミックタイプルールのサポートが実行されません。ダイナミックタイプルールを利用中の場合、iPhone 15 Proシミュレータでテストすることができません。Appleにバグ報告がされています。
ネスト化されたコントロールに対するルール
ルール改善を検討する中で、XCTestではネスト化されたコントロールがアクセシビリティツリーに表示されないことがわかりました。Appleにバグ報告がされています。 (#1110)
UIKitアプリでのImageView Nameルールのレビュー結果が必要
UIKitアプリでは、`accessibilityLabel`が設定されていない画像はデフォルトで支援技術によってフォーカスされません。
画像に`accessibilityIdentifier`が設定されている場合、Appleから取得したフォーカス可能性をチェックするためのプロパティが不正確である可能性があります。この予期せぬ動作のため、UIKitアプリでのImageView Name問題の結果はレビューが必要とされます。Appleにバグ報告がされています。 (#1633)
スクロールビュー内のラベルインネーム、ラベルアットフロント、v2.11.0画像ビュー名とアクティブコントロール名の誤検出
これらの誤検出に対応するために、修正作業を進めており、修正がリリースされ次第このリストを更新します。
In Scroll View
バナーの振る舞いをする要素内のテキストの問題を報告するかもしれません。これらの要素を大きなテキストが必要な人々に利用可能にするには、 UILargeContentViewerを使用してください。 (#622)
v2.11.0 Image View Name & Active Control Name
UIImageViewに`accessibilityIdentifier`が設定されているが、VoiceOverでフォーカスができず、内部にフォーカス可能なコントロールがネストされている場合、ActiveControlNameはUIImageViewに対して誤検出を報告する可能性があります。この問題を解決するには`accessibilityIdentifier`を削除します。Appleにバグ報告がされています。 (#1633)
Label In Name and Label At Front
これらの2つのルールは、規則のステータスを判断するために、コントロールの可視ラベルを近くの要素から探します。一部のビュー階層では、誤った近くのテキストが検出される場合があり、これらのルールが失敗します。 (#1622)
Android
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の全機能をアンロックするためには、スクリーンショットを有効にしてください。セキュリティ上の懸念を避けるため、モックデータを使用するアプリのデバッグまたはテストバージョンでスクリーンショットを有効にすることをお勧めします。⟦0⟧のガイドをご覧ください。 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()?
`1` ノードが正確に期待されたが、`2` ノードが見つかりました。条件: (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以降では、失敗が疑われる場合、Edit Text Nameルールがダッシュボードで要確認として表示されます。このケースでは、正しい動作を手動で確認してください。
ネイティブAndroid: カスタムダイアログ / モーダル
ネイティブコントロールを拡張しないカスタムダイアログやモーダルを実装する場合、モーダルの背後のビューの結果が表示されることがあります。この場合、これらのカスタムモーダルやダイアログに対してツールを実行せず、手動で確認して支援技術とうまく連携していることを確認してください。
ウェブダッシュボード
スクリーンショットがない
スキャン詳細ページからスクリーンショットが欠けている場合、アプリがスクリーンショットの撮影を防いでいる可能性があります。通常これは、製品アプリケーションのセキュリティ上の理由によるものです。Axe DevTools Mobileダッシュボードでの完全な機能を可能にするために、テストビルドではこの要件を削除することを検討してください。
一部のAndroidスキャン名が整形されていない
デフォルトで画面タイトルになっている一部のAndroidスキャン名は、バンドル識別子を含むフルクラス名として表示されます。今後のリリースでは、画面タイトルがより読みやすい名前にフォーマットされるようになります。回避策として、ダッシュボードまたはフレームワークからスキャン名を設定することができます。(#1643)
