axe DevTools Mobile 2023年4月リリースノート

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

2023年4月19日

Not for use with personal data

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

  • axeDevToolsUIKit v3.4.0
  • axeDevToolsXCUI v2.4.0
  • axe-devtools-android v3.2.0

新機能

React Native 自動テストとリンティング

このリリースから、axe DevTools Mobileを使用してReact Nativeで構築されたアプリのためにXCUIとEspressoでアクセシビリティテストを実行できることをお知らせします。さらに、無料の axe Accessibility Linter VSCode拡張機能 および axe DevTools Linter (以前のaxe Linter Serverとして知られていた)にReact Nativeルールを追加しました。これらの2つのツールは連携しており、開発プロセスの早期にReact Nativeアプリのアクセシビリティバグを見つけることができます。 [17298]

ページネーション

axe DevTools Mobileダッシュボードのロード時間を改善するために、スキャンのテーブルにページネーションを追加しました。各ページには50件のスキャンが含まれ、テーブルの下にページ間を移動するためのコントロールがあります。要約バナーは全スキャンに対するアクセシビリティスコアと残りの問題の総数を報告し続けます。フィルタリングとソートはスキャンの総セットに影響を与えます。スキャンの一括選択は各ページに結び付けられており、「すべて選択」チェックボックスは現在表示されているページの50件のスキャンだけを選択します。さらに、テーブルのサイズ変更機能を削除しましたが、各スキャンのデータが固定幅で利用できることを確実にするため改善を行いました。[17142]

WCAG 2.2 タッチターゲット間隔ルール

Dequeでは、適用可能なWCAG成功基準を網羅した最も価値のあるネイティブモバイルアクセシビリティテストを提供することに専念しています。WCAG 2.2の登場を控え、提案された レベルAA成功基準2.5.8ターゲットサイズ(最小)をテストするために、iOSとAndroidの両方にルールを実装しました。これらの新ルールは、私たちの既存のタッチターゲットサイズルールとは区別されるタッチターゲット間隔と呼ばれています。このルールは レベルAAA成功基準2.5.5ターゲットサイズに基づいていますので、新ルールは既存のルールのより厳格な要件よりも寛容です。WCAG 2.2は依然として候補者レコメンデーション段階であるため、これらのルールはIGNOREDステータスで全ての結果を報告します。WCAG 2.2が最終的に確定されると、これらのルールは今後のリリースで再導入されます。タッチターゲット間隔ルールがテストする要件に関する詳細については、 iOSAndroidの修正ガイドをご参照ください。

iOS用axe DevTools Mobile

iPadOSサポート

axeDevToolsUIKit v3.4.0とaxeDevTools v2.4.0は、シミュレーターまたは物理デバイスを介して、iPadOS上で動作するアプリケーションのテストを公式にサポートしています。ダッシュボードでは、これらのスキャンはテーブルやスキャンの概要ページでAppleのアイコンを表示し、個々の問題にはiPadOSが表示されます。[18244]

XCUIフレームワーク用の最適化された自動化ビルド

2022年11月のリリースでは、認証やその他のネットワークリクエストなしでユニットテストを可能にするaxeDevToolsUIKitの最適化された自動化ビルドを導入しました。このリリースでは、外部ネットワークとのやり取りをしないUIテストを実施できるaxeDevToolsXCUIの最適化された自動化ビルドも提供します。このビルドはDequeのArtifactoryからのみ利用可能ですので、 フレームワークダウンロードガイドに従ってください。

XCUIフレームワークの新ルール

私たちは常にルールセットの改良と拡張に取り組んでおり、iOSのためにXCUIフレームワークに2つの新しいルールを追加したことをお知らせします。色のコントラストと画面の向きは、以前はaxeDevToolsUIKitにのみ含まれていましたが、axeDevToolsXCUIにも提供されるようになりました。

重なるビュー視覚強化

前回のリリースで AppleのVisionフレームワーク を色のコントラストルールに統合した後、衝突し合うビューのルールにも使える機会を見出しました。更新されたルールはOCRを使用して、重なり合ったビューのテキストが衝突しているかどうかを判断し、誤検知を減らします。

追加機能

  • ローカルに保存するときにスキャン名を設定する機能を追加しました
  • プライベートインスタンスに接続できるようにログイン画面APIを更新しました
  • アップロード時にスキャンURLをログに印刷して簡単にアクセスできるようにしました

Android用axe DevTools Mobile

色のコントラスト機械学習の向上

2023年2月のリリースで、iOSの色のコントラストルールにAppleのVisionフレームワークを組み込んでルールの正確性と範囲を拡大しました。同様に、今回私たちは GoogleのMLKit をAndroidの色のコントラストルールに活用しています。これにより、テキストの色をより正確に検出し、テキストの画像における色のコントラストをテストできるようになります。これらの改善により、以前には検出できなかった新しい色のコントラスト問題が報告されることがあります。

Composeボタン名ルール

axe-devtools-android v3.2.0では、Composeアイコンボタン名とComposeテキストボタン名を1つのルールに統合し、Composeボタン名と呼ばれるようになりました。既存のスキャンは2つの廃止されたルールの結果を保持し、axe DevTools Mobileダッシュボードの設定内のカスタムルールセット機能を使用してフィルタリングすることができます。

追加機能

バグ修正

iOS用axe DevTools Mobile

  • LoginViewController は名前が変更されました DequeLoginViewController 同名のコントローラーを持つアプリでの問題を避けるために [23412]
  • プログラム的なタイトルがない場合やナビバーに何もない場合に、画面タイトルルールが不完全ではなく問題を報告するようになりました
  • ログイン画面は、無効なフィールドの説明を含むようになりました
  • アラート用の isVisibleToUser プロパティに関するバグを修正しました
  • 複数行のテキストに対する重複する結果に関連するカラーコントラストルールの問題に対処しました
  • 使用サービスで他のDeque製品と一貫性を持たせるために製品名のフォーマットを更新しました
  • いくつかのピッカーに関連するルールで誤検出を減少させました

Android用axe DevTools Mobile

  • Compose TextField Nameルールは、TextFieldにコンテンツの説明があるアイコンが含まれている場合には合格となります
  • Proguardに関連する依存性の衝突を解決できない問題を解決しました
  • 画面タイトルはクラス名ではなく、人間が読みやすいタイトルにフォーマットされるようになりました
  • 使用サービスで他のDeque製品と一貫性を持たせるために製品名のフォーマットを更新しました

axe DevTools Mobile ダッシュボード

  • Androidの非表示情報表示フォーカスルールと非表示アクティブビューのフォーカスルールが実験的として正しく表示されるようになりました
  • 新規の読み取り専用ユーザーが問題を表示できないコピーリンク問題の修正を行いました
  • テーブル内のスキャンにタグを編集するモーダルに関連したいくつかのバグに対処しました
  • 水平スクロールの必要性を減らすためにテーブルのレイアウトを改善しました
  • アクセス拒否ページは、さまざまなビューポートサイズに対応できるようになりました
  • テーブルとサマリーバナーのデータに対して別々のローダーを作成しました
  • アナウンスの取得に対するエラーハンドリングを改善しました
  • テーブル内でスキャンが選択されると表示されるオーバーレイの閉じるアイコンに代替テキストを追加しました
  • テーブルのスクリーンリーダーとキーボード操作性を改善しました
  • 直接テーブルに移動できるスキップリンクを追加しました
  • アクセス拒否ページが一部の場合に正しく表示されない問題を修正しました
  • スキャン数の横に表示される感嘆符を削除して、混乱を軽減しました
  • いくつかのフォントスタイルが更新されました

既知の問題

important
  • ネイティブiOS、ネイティブAndroid、およびReact Nativeアプリケーションでaxe DevTools Mobileが自動テストを実行します。テックスタックに対するアクセシビリティテストソリューションについては、Deque担当者にお問い合わせください。
  • ルールはウェブビューまたはレンダリングされたPDFでは実行されません。HTMLコンテンツに対するテストにはaxe DevTools for Webをご利用ください。axe MonitorはアクセシビリティのためのPDFスキャンをサポートしています。

iOS用axe DevTools Mobile

axeDevToolsUIKit.xcframework

SwiftUIで構築されたビューはこのフレームワークを使用してテストできません

SwiftUIビューには、UITestingでaxeDevToolsXCUIフレームワークを使用してください。

カスタムルールのサポートはSwiftのみで利用可能です

カスタムルールAPIはObjective-Cでは利用できません。

The "Visible to User" filter may not work properly on side menus and alerts.

We are actively working on a fix and are expecting it in the next release.

誤検知: InScrollView, SupportsDynamicType

以下の誤検知の修正に積極的に取り組んでおり、修正がリリースされ次第、このリストを更新します。

InScrollView
InScrollView は、バナーのように振る舞う要素内のテキストについて問題を報告することがあります。これらの要素を大きなテキストを必要とする人に利用可能にするには、 UILargeContentViewerを使用してください。

SupportsDynamicType
以下のシナリオでは誤検知が発生する可能性があります:

  • を使用している場合、 UIContentSizeCategoryDidChange フレームワークが、UITestsでテキストがDynamic Typeに応答しないと誤って報告する可能性があります。
  • を使用して NotificationCenter.default.addObserver(forName:.., object:.., queue:.., using:..) 通知に応答する場合、 UIContentSizeCategoryDidChange 通知。
  • を使用して traitCollectionDidChange 親ビューやビューコントローラ上でDynamic Typeに応答する場合。

axeDevToolsXCUI.xcframework

SwiftUI ピッカーと UIKit ピッカー

SwiftUI と UIKit のピッカービューは、シミュレーターやデバイスでフレームワークが動作を停止する原因となる可能性があります。

「Visible to User」フィルタはサイドメニューやアラートで正しく動作しない可能性があります。

私たちは修正に積極的に取り組んでおり、次のリリースでの提供を予定しています。

現在、ランドスケープの向きは正式にサポートされていません

これは後のバージョンで対応される予定です。

誤検知: A11yElementFocusBox, InScrollView

以下の誤検知の修正に積極的に取り組んでおり、修正がリリースされ次第、このリストを更新します。

A11yElementFocusBox
画面外のビューに対して、このルールが誤ってVoiceOverのフォーカスボックスがビューを包んでいないと報告することがあります。

InScrollView
InScrollView は、バナーのように振る舞う要素内のテキストについて問題を報告することがあります。これらの要素を大きなテキストを必要とする人に利用可能にするには、 UILargeContentViewerを使用してください。

axe DevTools Mobile for Android

Proguard使用時のクラッシュ

デバッグまたはテストビルドがProguardを利用している場合、 Proguardの設定でDequeを無視する手順に従ってください。

Java8プロジェクトとaxe DevTools Android 3.1.0のコンパイルエラー

次のインポートを試してください:

	implementation 'androidx.core:core-ktx:1.9.0'
	implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4'
	implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4'
	
After importing the above library, if you see errors related to minSDK version for core-ktx library try the following in your project’s Android Manifest: <uses-sdk tools:overrideLibrary="androidx.core" />

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)

`Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)`というエラーが発生した場合は、 helpdesk@deque.com または、 support.deque.com までご連絡ください。特定の条件下では、同時に2つのComposeルートノードが存在する可能性があります。

axe DevTools Mobile ダッシュボード

テーブルを問題数でソートできません

2023年4月のリリース以降、スキャンごとの問題数によるソートが無効になっています。これは今後のリリースで修正されます。

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

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