2016-03-29 6 views
1

グリッド、ステータスバーなど、いくつかのInfragisticsコンポーネントを使用するC#WinFormsアプリケーションがあります。TestStack.WhiteでInfragistics UIコンポーネントにアクセスする

私はTestStack.Whiteを使用してUIテストを自動化しようとしています。これまでのところ、通常の.netコンポーネントと正常に対話しています。

私はVisual UI Automation Verifyツールを使用してアプリケーションを探索し、必要なUIコンポーネントを見つけたりアクセスしたりしています。 UltraStatusBar内でハイライトされたハイパーリンクのテキストにアクセスする必要があります。

enter image description here

以下は、私が使用C#コードです。メインウィンドウとステータスバー自体からUltraStatuBarを含むパネルを正常に取得できますが、どういうわけかUltraStatusBar内のUIコンポーネントにアクセスできませんでした。

enter image description here

任意のヒント?

答えて

1

だ場合は、白のUIAComWrapperブランチを使用してみました、ネイティブMS UIオートメーションによるコントロールを探してみてください?私は多くのInfragisticsコントロールがMS Automation 3.0(UIAComWrapperがラップするもの)なしではアクセスできないことを発見しました。

0

UIA Verify 2.0のように見えますが、UIComWrapperを使って表示される内容がわかります。ホワイトは、UIComなしでMS UIオートメーションを使用します。

考えられる解決策 - それは白人の問題

var elementsCollection = statusBar.AutomationElement.FindAll(TreeScope.Children, Condition.TrueCondition); 
    foreach (AutomationElement element in elementsCollection) 
    { 
     if (element.Current.AutomationId.Contains("lblFileName")) 
     { 
      //do what you need 
     } 
    } 
関連する問題