スクリーンリーダー向けの手動および自動チェック、テストフィクスチャ、受け入れ基準、修正ガイダンスを提供します。このリファレンスは採用の境界、失敗時の挙動、観察可能な証拠を固定しつつ、環境固有の制限は設定可能なままにします。
パッケージステータス: 人間によるレビュー準備が整ったリファレンスコンテキストです。契約およびテストシナリオは完成していますが、採用実装がこれらを通過したという主張はしていません。
決定事項
スクリーンリーダーについては、まずネイティブのセマンティクスを採用し、文書化されたキーボードおよびフォーカス契約を持ちます。このブロックは代表的なポジティブ、境界、拒否、失敗、回復ケースから構成されるリリースおよびリグレッション契約として扱います。このパッケージはリファレンス契約であり、採用チームは自身の環境の証拠から数値制限、プロバイダー、管轄区域、運用責任者を選択しなければなりません。
範囲
- このテストブロックで記述されるスクリーンリーダーのアクター、入力、出力、状態、ポリシーまたはスキーマバージョン、外部に見える成果物。
- 主および代替インターフェース、バックグラウンド作業、キャッシュ、統合、サポートパス、および同じ境界を検証できる証拠。
- リファレンスを安全に適用するために必要な採用固有の設定、展開、回復、検証の責任。
このブロックの外
- すべての採用者に対して普遍的なベンダー、フレームワーク、管轄区域、数値閾値、保持期間、サービスレベル目標を選択すること。
- パッケージ化されたシナリオが下流の実装で実行されたことや、このリファレンスが法的、セキュリティ、アクセシビリティ認証を付与することを主張すること。
契約
- ビジュアルインターフェースが伝えるプログラム名、役割、値、状態、関係をすべてプログラム的に公開すること。
- すべての操作はキーボードでトラップなく操作可能であり、フォーカス順序は読み取りおよび操作順に従うこと。
- 非同期の状態やエラーをフォーカスを予期せず移動させることなく通知し、回復ガイダンスを影響を受けたコントロールに関連付けること。
- ズーム、文字間隔、リフロー、強制色、動作軽減、プラットフォームのテキストスケーリングが適用される場合はコンテンツと操作を保持すること。
- すべての判定を伴う実行について、フィクスチャのバージョン、環境、設定、観察結果、証拠の場所を記録すること。
- 製品の失敗、依存関係の失敗、テストインフラの失敗、不確定な証拠をレポートで区別すること。
- サポートされるブラウザ、プラットフォーム、支援技術の組み合わせとテスト名、役割、値、関係、読み順、ランドマーク、見出し、状態通知を定義すること。
- ブラウズモードおよびフォームモードでの操作を維持し、重複または非表示の通知を避け、すべての欠陥について正確なフィクスチャおよびナビゲーションシーケンスを記録すること。
実装ガイダンス
- リスククラスを網羅する最小の決定論的フィクスチャセットを構築し、プライバシー安全なレビュー後にのみ本番由来のケースを追加すること。
- フレームワークやベンダーの詳細を選択する前に、スクリーンリーダーの入力、出力、アクター、状態、不変条件、副作用、証拠をモデル化すること。
- 適用されるスクリーンリーダー契約またはポリシーバージョンをマテリアル状態と共に保存し、移行、再生、サポートの判断が追跡可能であることを保証すること。
- 制御された展開の背後にあるパスを導入し、期待される結果と観察された結果を比較し、採用証拠が完了するまでテスト済みの回復ルートを維持すること。
失敗処理および安全策
- セマンティクスやフォーカスを保持できない場合、操作はビジュアルのみの挙動の背後で出荷されず、欠陥はリリースを阻止するものとする。
- 無効または矛盾するスクリーンリーダー状態は拒否または隔離され、実装は権限を拡大したり効果を重複させる値を推測しないこと。
- リトライは制限され、耐久性のある識別子を使用し、使い果たした後は検査可能な終端状態に達し、責任者が明確であること。
検証および運用
- クリーンな状態からスイートを2回実行し、順序、リトライ、並列実行が判定を変えないことを確認すること。
- スクリーンリーダーの成功、拒否、検証失敗、依存失敗、リトライ枯渇、回復を契約バージョン別に監視し、機密性の高いペイロードの詳細は含めないこと。
- ポリシー、スキーマ、依存関係、移行、境界の変更後にペアのポジティブおよびネガティブフィクスチャを再実行し、結果の証拠を保持すること。
採用の前提
- 例の名前と値は具体的なフィクスチャであり、普遍的なデフォルトではありません。採用者は文書化された証拠と所有権を通じてこれらを置き換えます。
- 採用システムは認証済みの識別、耐久性のある操作または記録バージョン、制限されたテレメトリ、および制御された変更パスを提供できること。
このパッケージ内の実行可能に見える例はフィクスチャおよび受け入れ契約です。構造とメタデータを検証するためにコレクションバリデータを実行し、ターゲットリポジトリでシナリオを翻訳および実行してから実装証拠を記録してください。