5

我的团队正在进入一个新项目,并且我们借此机会使自己掌握最新的Scrum方法,新技术等。其中一部分涉及尝试自动化我们的QA流程,使用Microsoft Test Manager和VS2010 Coded UI测试。带自动/编码UI测试的第三方WPF套件

但是,我们在使用我们当前选择的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测试,而这种测试本该更好。所以,我的问题是:

  1. 有没有办法让DevX XPF控件更好地处理编码/自动化的UI测试?
  2. 如果不是,是否有一种替代XPF控制套件可以与编码/自动化UI测试一起使用?

我在栅状部件与排序,分组等在内的导航栏状部件,以及自定义编辑器(日期,数字等)特别感兴趣,都支持一个统一的系统范围主题化。

(而且,如果这种类型的事情是很容易只使用本地WPF控件和样式做,这将有助于了解为好。)

编辑:由于存在似乎没有WPF控件套件实际上与MTM一起工作,我们被迫在同一时间使用两个单独的测试工具。根据这里的几个答案,我们强烈倾向于TestComplete。希望情况很快改善。

+4

这是一个非常狭窄的问题。人们只能希望曾经处于这种状况的人看到它。我建议联系所有的WPF控制套件公司,并要求他们.. – 2012-02-07 18:35:03

+0

我希望你找到你需要的... – punker76 2012-02-14 07:52:08

回答

2

对于支持这个的控件套件没有太多的想法,但我们已经分析了过去的测试套件,它支持基于对象的WPF自动测试。看看TestComplete(虽然它不是免费的)

这里是有网站提控制支持摘录他们提供 -

WPF控件支持TestComplete提供了WPF(XAML)丰富的支持 控制和强大WPF应用程序的自动UI测试。 TestComplete的高级测试操作(如项目选择或单元格数据输入)是对象感知型的,而不是坐标感知型,因此在执行WPF 测试时更稳定并能抵抗UI更改。灵活的对象映射方案允许测试人员将自定义的 或派生的WPF控件映射到标准类型,以简化UI 操作。也可以使用TestComplete SDK添加对定制WPF控件的支持 。

http://smartbear.com/products/qa-tools/automated-testing/testing-wpf-apps/

0
  • 在我们的项目之一,我们已经使用Infragistics WPF控件和TestComplete运作它。

  • 我们的QS团队还使用TestComplete

  • 我发现了一个免费的实用程序是独立的UI库。

PROJECT SIKULI

Sikuli是视觉技术使用图像(屏幕截图)来自动和测试图形用户界面 (GUI)。 Sikuli包括Sikuli 脚本,可视化脚本API的Jython和Sikuli IDE,让您轻松与 截图编写脚本视觉的 集成开发环境。 Sikuli脚本自动化您在 屏幕上看到的任何内容,而无需内部API的支持。您可以通过编程方式 控制网页,Windows/Linux/Mac OS X桌面应用程序或者即使是在模拟器中运行的iPhone或Android应用程序,也可以通过VNC进行控制。

+0

我们已经编写了UI测试,他们只是不使用我们正在使用的控件。这就是我正在寻找的:使用编码的UI测试正确运行的控制套件。 – 2012-02-10 15:35:50

+0

在我们的其中一个项目中,我们使用infragistics wpf controls和testcomplete工作。你尝试过sikuli吗? – punker76 2012-02-10 16:39:13

0

刚刚发现此主题... 我们在使用DevExpress组件 时遇到了同样的问题,这些组件在播放CUIT时无法找到。 但特别是Sikuli脚本,问题是可以解决的......至少。

  1. 与MS测试经理
  2. 播放测试记录测试,发现unreproduceble步
  3. 在合适的位置“步过”
  4. 包括创建Sikuli脚本在CUIT创建Sikuli顺序和步骤重新开始2

确实需要时间以这种方式创建测试,但至少是可能的。