問題タブ [winappdriver]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ui-automation - 一般的な XAML コントロールのどの部分が UIAutomation を介してアクセスできるかを決定するもの
WinAppDriver
UWP アプリを使用して UI テストを自動化しようとしています。inspect.exe
ドキュメントには、 (ie UIAutomation
)を通して見えるものはすべてを通して制御できると書かれていWinAppDriver
ます。これは、UIAutomation を介して基本的なコントロールにアクセスできることを意味します。また、これらのコントロール内のコンテンツでさえ、UI オートメーションを介してアクセスできる場合があります。またはのヘッダー、TextBlock
またはToggleSwitch
のポップアップのようにComboBox
。
これに励まされてControlTemplate
、共通コントロールを変更して、コントロールの特定の要素を UIAutomation で表示できるようにしました。の例を参照してくださいToggleSwitch
(デフォルトでは、 でマークされているため、およびのプロパティはControlTemplate
公開されません) 。OnContent
OffContent
ToggleSwitch
AutomationProperties.AutomationView = "Raw"
しかし、のヘッダーを取得しようComboBox
とすると、 経由でアクセスできませんでしたUIAutomation
。
はやControlTemplate
のような他のコントロールに似ていますが、何らかの理由で で定義されているものは からアクセスできません(ID と のポップアップ リストを除く) 。だから私の質問は、特定の UI コントロールがコンテンツを公開し (たとえば)、他のコントロールを公開しないのはなぜですか?ToggleSwitch
TextBox
ControlTemplate
UIAutomation
ComboBox
Header