これは初歩的な質問ですが、MS Coded UI Tests を使い始めています。そして、デフォルトのマッチングメカニズムの代わりに、XPath を使用してページ要素を見つける方法があるかどうか疑問に思っていましたか? 私がやりたいことは、親要素を一致させ、プログラムで DOM ツリーを下に移動して、操作したい要素を取得することです。これは Selenium で簡単に実行できますが、コード化された UI テストで実行する方法がわかりません。
ありがとう
これは初歩的な質問ですが、MS Coded UI Tests を使い始めています。そして、デフォルトのマッチングメカニズムの代わりに、XPath を使用してページ要素を見つける方法があるかどうか疑問に思っていましたか? 私がやりたいことは、親要素を一致させ、プログラムで DOM ツリーを下に移動して、操作したい要素を取得することです。これは Selenium で簡単に実行できますが、コード化された UI テストで実行する方法がわかりません。
ありがとう
xpath
を使用してナビゲートを管理できるはずですUITestControlCollection
。CodedUI のレコーダーを使用して最上位のコントロールに移動し、使用GetChildren
して目的の場所に移動します。すべてのオブジェクト タイプが類似しているため、xpath
変更されていることに注意してください。CodedUI の API は区別しません。
例:
HtmlDocument doc = this.UIYourWindowName.UIYourDocumentName; // mapped control
doc.Find();
UITestControl toline = new UITestControl(doc);
toline.SearchProperties["Id"] = "to_d"; // use the id of the top most control
UITestControlCollection toline1 = toline.GetChildren(); // get the child objects
toline1 = toline1[0].GetChildren(); // xpath: \\ctrl[@id='to_d']\item[0]
toline1 = toline1[0].GetChildren(); // ctrl[]\item[0]\item[0]
// and so on...