ルールの無視
アクセシビリティをテストする際に、特定のルールを無視することができます。特定のルールを名前で無視することや、いくつかのルールをビューIDリソース名で無視することが可能です。すべてのルールが重要であると私たちは考えていますが、これらのカスタマイズをすれば、修正されていないビューを無視し、新しい問題の特定に集中することができます。
以下の例では、 axe はログイン時に初期化される AxeDevTools オブジェクトを指します。
利用可能なAPI
特定のルールまたはルールのセットを無視するには、テストを行う前に設定を更新します。
ルールを無視
以下のコードは、特定のルールを無視する方法を示しています。 TouchSizeWcag。
axe.ignoreRules(mutableListOf("TouchSizeWcag"))ビューIDリソース名で無視
ビューIDリソース名が割り当てられているルールのセットを無視するには、ビューIDリソースの名前と無視するルールのリストという2つのパラメータを使用します。
axe.ignoreByViewIdResourceName(
"axe_button",
listOf(
"ActiveViewName"
)
)Jetpack Composeを使用してビューを作成している開発者には、ビューIDを使用する代わりに Modifier.testTag("viewToIgnoreRuleOn") を参照したいビューに使用することをお勧めします。さらに、ビューの祖先の1つに次のセマンティクスプロパティを追加する必要があります。
Scaffold(
modifier = Modifier.semantics { testTagsAsResourceId = true }
)これが完了したら、既存の testTag の代わりに viewId を使用してビューを無視できるはずです。 ignoreByViewResourceId APIで。
コンポーザブルの例:
Button(
modifier = Modifier.testTag("<tagToIgnore>"),
onClick = { /* Click action */ }
) {
Text("Click me")
}実験的ルールの無視
実験的ルール は、まだテストや開発中のルールセットです。 ignoreExperimental が有効な場合、実験的ルールからのすべての結果は AxeStatus.IGNOREDのステータスになります。
axe.ignoreExperimental()無視されたルールのリセット
自動テストスイート内で、新しいテストセットを開始して すべての ルールを復元したい場合があります。この場合、上記の方法で設定した無視されたルールをクリアすることができます - resetIgnoredRules APIを使用して。
@Before
fun setup() {
axe.resetIgnoredRules()
}
@Test
fun testButtonOnly() {
axe.ignoreRules(listOf("ScreenTitle"))
...
}
@Test
fun testScreenTitle() {
...
}