0

AutomationProperties.AutomationId 添付プロパティには、次の 2 つの目的があるようです。

  1. 自動受け入れテスト中の UI コントロールの識別。
  2. アクセシビリティ。

実行時に UI コントロールが生成される場合 (データ バインドされたツリービューなど) が多く、受け入れテストで他の手段を使用してコントロールを検索する必要がある場合、AutomationId に実際に値を設定するのはいつ、どのような値でしょうか? どのコントロールが持つべきで、どれが持つべきでないかを決定するのは任意のプロセスですか? または、すべての開発者が従うことができる一般的なガイドラインはありますか?

4

2 に答える 2

4

AutomationId は実際にはテスト目的であるため、その使用方法は、アプリをどのようにテストするかによって異なります (または、個人ではなくチームによって作成されたアプリの場合、テスト グループがアプリをどのようにテストしたいか)。AutomationId の主な用途は、ローカライズされたビルドごとに変更される可能性がある (または、開発中に UI が微調整されると変更される可能性がある) Name などを参照する必要なく、テスト コードが確実に要素を見つけられるようにすることです。AutomationId を使用する必要はまったくありません。テストに要素を識別する他の手段がある場合は、代わりにそれを使用して、AutomationId を割り当てないままにすることができます。

アクセシビリティは通常それを使用しません。エンドユーザーにとっては何の意味もありません。また、特定のコントロールに存在する保証もありません。そのため、それでできることはほとんどありません。

テストとアクセシビリティには多くの重複があります。両方に役立つ UIAutomation の部分がありますが、どちらか一方だけに役立つ部分もあります。AutomationId は、テスト専用の要素の 1 つです。

于 2011-11-01T06:10:44.990 に答える