我的经理让我为我们的 Silverlight 应用程序做一些自动化的 UI 测试。问题是这个应用程序使用了一些自定义控件,因此我无法立即以编程方式访问它们。
访问它们的唯一方法是使用 AutomationPeer,但我的经理不喜欢这个想法,因为它违反了测试原则来更改代码以支持 UI 自动化;代码应按原样进行测试。
有没有一种方法或工具可以让我在不使用 AutomationPeer 的情况下创建自动化 Silverlight UI 测试?
我的经理让我为我们的 Silverlight 应用程序做一些自动化的 UI 测试。问题是这个应用程序使用了一些自定义控件,因此我无法立即以编程方式访问它们。
访问它们的唯一方法是使用 AutomationPeer,但我的经理不喜欢这个想法,因为它违反了测试原则来更改代码以支持 UI 自动化;代码应按原样进行测试。
有没有一种方法或工具可以让我在不使用 AutomationPeer 的情况下创建自动化 Silverlight UI 测试?
您的自定义控件应该支持自动化测试,但无障碍工具与它们的交互方式也是如此。
告诉您的经理,“我需要添加辅助功能支持,并且自动化是免费的”。
简而言之,如果您不能自动化控制,那么盲人、聋人和/或行动不便的人无论如何都无法使用它。
有几种解决方案。一个是您可以通过 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
但是,此解决方案可能更简单