我的团队一头扎进一个新项目,我们借此机会让自己了解 Scrum 方法、新技术等。其中一部分涉及尝试使用 Microsoft 测试管理器和 VS2010 Coded UI 测试自动化我们的 QA 流程.
但是,我们在让自动化测试回放与我们当前选择的 WPF 控件库 DevExpress XPF 套件一起工作时遇到了问题。多年来,我们一直在将 DevExpress 用于他们的 WinForms 和 ASP.NET 控件,但这是我们第一次使用他们的 WPF 控件和自动化 UI 测试,两者似乎不能很好地协同工作。
特别是,尝试回放与网格控件交互的记录测试永远不会正常工作,即使在简单的控件上,回放似乎也会混淆它应该与哪个编辑器交互。在我们的测试负责人从 MTM 生成的动作记录中,我看到了很多这样的内容:
Type '5236' in 'PART_Editor' text box
Type '253' in 'PART_Editor' text box
更糟糕的是,在网格内部:
Click 'FooterPanel' pane
Last action on list item was not recorded because the control does not have any good identification property.
Click 'FooterPanel' pane
Click 'Item: CashEntry, Column ...' custom control
Move 'Item: CashEntry, Column ...' custom control from (141, 10) to 'Item: CashEntry, Column ...' custom control (5, 11)
Type '{NumPad8}{Down}{NumPad5}{NumPad0}{Up}{Down}{Down}' in 'CashEntry' window
现在,我在 DevX 的论坛上看到很多关于他们的 WinForms 控件不能很好地支持 MSAA 以使编码的 UI 测试工作的喋喋不休,但我认为 WPF 使用了一种不同的机制来进行自动化 UI 测试,这种机制应该可以更好地工作。所以,我的问题是:
- 有没有办法让 DevX XPF 控件在编码/自动化 UI 测试中更好地工作?
- 如果没有,是否有已知可以很好地与编码/自动化 UI 测试配合使用的替代 XPF 控制套件?
我对具有排序、分组等功能的类似网格的组件、类似导航栏的组件和自定义编辑器(日期、数字等)特别感兴趣,所有这些都支持统一的系统范围的主题。
(此外,如果仅使用本机 WPF 控件和样式就可以轻松完成此类事情,那么了解这一点也会很有帮助。)
编辑:由于似乎没有实际与 MTM 一起使用的 WPF 控件套件,因此我们被迫同时使用两个单独的测试工具。根据这里的几个答案,我们强烈倾向于 TestComplete。希望情况尽快好转。