2011-05-12 66 views
0

让WPF应用程序具有复杂的UI并且想要为其编写CodedUITest脚本。 因为我对此很陌生,所以我需要正确的指导/方法来编写CodedUITest脚本。 它不可能做任何事情使用记录&玩的东西,因为我们有一些自定义控件存在于用户界面,并且可以随时更改。什么是使用CodedUITest测试WPF应用程序的正确方法

我想用C#代码来做这件事。面临的问题,同时从定制网格获取特定记录并使用C#代码识别控件。

  • 什么样的属性,我应该有控制CodeDUITest中容易识别?
  • AutomationId是否强制要求所有控件?
  • 需要为Treeview和网格等动态控件做些什么?
  • 如何识别拖动&窗口的拖放类型?

回答

1

理论方面:

编码的UI测试由做UI回归测试。给定一些数据,你的UI应该以的具体方式作出反应。这个测试之王的想法是,给定UI中相同的数据保持同样的行为。换句话说:如果给定一个特定的数据集,你的用户界面改变了反应的方式(基于记录),测试应该打破

实用事实:

编码的UI测试是一个测试框架,和录音生成代码。你可以看到这个代码,恕我直言,你应该看看这些东西是如何工作的。如果你需要一个更通用的编码UI,你可以通过修改生成的代码来实现。其实我很强建议分裂生成的类和方法,并做一些clanup。

该代码生成一种UI图(具有引用测试所使用的UI对象的属性的类)。您可以手动调整地图添加或删除属性(毕竟,它只是代码),并创建自己更复杂的UI地图,事实上,您甚至可以使地图从其他地图“继承”(更多a la ASP.Net母版页)。

在WPF中,你可以检查一个控件是否存在,他的UI风格,它的内容和他的孩子(如果有的话)。 关于AutomationID主题,仅在您需要检查的控件中是必需的。 在D & D ...我不知道。我从来没有做过D测试D & D.

+0

感谢您的支持。 我遇到了另一个名为Microsoft UI Automation Library的测试库。 想要检查,我应该使用哪个库来进行我的WPF应用程序测试,CodedUITest或Microsoft UI Automation库? – CodingNinja 2011-05-27 18:32:23

+0

请参阅http://blogs.msdn.com/b/dpksinghal/archive/2011/09/28/how-to-test-deep-hierarchy-controls-using-coded-ui-test-in-wpf.aspx修复编码的UI测试记录器视觉树深度问题,解决测试记录器未找到您的WPF控件的问题。 – 2013-06-24 20:19:25

相关问题