时间:2010-11-03 20:15:49

标签: winforms coded-ui-tests

我想创建一个自动UI测试来测试我的syncfusion网格。我的问题是录音机无法识别此控件(或任何同步控制)。我在互联网上搜索了很多,但我找不到任何扩展,所以录音机会识别我的控件(我使用的是WinForms,而不是WPF!),或者至少是一种扩展录音机功能的方法,所以syncfusion的控件将会不知何故被认出来。

有没有简单的方法来扩展录音机?或者有可用的扩展吗? 或者我可以从录像机生成的WinClient中获取网格对象吗?

谢谢!

2 个答案:

答案 0 :(得分:2)

启动您的计划。运行Spy ++实用程序。键入Ctrl + F以启动取景器工具并将靶心拖到窗体上。好的,同步并查看树中可见的窗口。如果您看到常规的Windows窗体控件(如Button或Label),但任何SyncFusion控件,那么您可能已找到问题的根源。

尝试改进.NET控件的组件供应商通常通过创建“无窗口”控件来实现。它们不是真正的控件,它们不是从Control类派生的,也没有Handle属性。他们使用父母的表面来绘制自己,使它们看起来就像控件一样。 .NET ToolStripItem类执行此操作。这也是WPF使用的方法。

最大的优点是它们可以快速渲染并支持常规控件无法支持的各种效果,例如透明度,旋转和消除锯齿的窗口边缘。最大的缺点是你使用的那种工具突然变得粗糙,无法找回控件。因为它们通过在窗体上找回Windows窗口来工作,所以没有窗口。

这是一个难以解决的问题,“控制”仅存在于内存中,并且工具找不到它的好方法。使用辅助功能是这种工具找到我能想到的控件的唯一其他方法。首先必须由控制供应商实施,这是一个容易被忽视的模糊功能。您确实需要供应商的帮助才能找到解决方法。不应该是一个问题,这就是为什么你付给他们大笔钱。

答案 1 :(得分:0)

这是来自Syncfusion的Rajadurai。感谢您对Syncfusion产品的兴趣。为了使UI Test Automation识别Syncfusion网格(WinForms),需要在网格中提供一些内部支持,其实现正在进行中并即将完成。请通过Direct-Trac提交事件,以便通过以下链接进行任何进一步的相关咨询。 http://www.syncfusion.com/Account/Logon?ReturnUrl=%2fsupport%2fdirecttrac

您也可以通过support@syncfusion.com与我们联系。我们很乐意为您提供帮助。

此致 Rajadurai