我的經理讓我爲我們的Silverlight應用程序進行一些自動化的UI測試。問題是這個應用程序使用了一些自定義控件,因此我無法以編程方式立即訪問它們。測試不使用AutomationPeer的自定義Silverlight控件
訪問它們的唯一方法是使用AutomationPeer,但我的經理不喜歡這個想法,因爲它違背了測試原則來更改代碼以支持UI自動化;代碼應該按原樣進行測試。
有沒有一種方法或工具可以使我創建自動Silverlight UI測試,而不使用AutomationPeer?
我的經理讓我爲我們的Silverlight應用程序進行一些自動化的UI測試。問題是這個應用程序使用了一些自定義控件,因此我無法以編程方式立即訪問它們。測試不使用AutomationPeer的自定義Silverlight控件
訪問它們的唯一方法是使用AutomationPeer,但我的經理不喜歡這個想法,因爲它違背了測試原則來更改代碼以支持UI自動化;代碼應該按原樣進行測試。
有沒有一種方法或工具可以使我創建自動Silverlight UI測試,而不使用AutomationPeer?
您的自定義控件應該支持自動測試,但同樣的機制是可訪問性工具如何與它們交互。
告訴你的經理'我需要添加無障礙支持,並且自動化免費'。
總之,如果您無法自動控制,那麼盲人,聾啞人和/或行動不便的人無法使用它。
有幾種解決方案。一個是你可以通過UITestExtionsPackage寫全力支持看看這些
http://blogs.msdn.com/b/gautamg/archive/2010/03/23/writing-extension-for-wpf-custom-control.aspx
http://blogs.msdn.com/b/mathew_aniyan/archive/2011/05/17/custom-wpf-control-s-custom-properties.aspx
但是這種解決方案可能是簡單的一個
+1 - 如果你有一個自定義控件,沒有AutomationPeer,你正在測試的是一個不完整的實現。 – BrendanMcK
我同意傑森。但是,如果你不能走這條路。 Telerik Test Studio能夠與尚未實施AutomationPeer的Silverlight應用程序一起工作。它可以做到這一點,因爲它不依賴於AutomationPeer。 – sircody
謝謝你們!我會盡力說服他使用AutomationPeer,並調查Telerik Test Studio。 – Val