2011-04-13 167 views
3

我们正在开发使用Windows Forms和DevExpress控件的软件。DevExpress LookUpEdit和编码UI测试

而且我们还希望使用编码UI测试来自动测试我们的应用程序。

正如我们最近的经验告诉我们,DevExpress不支持CUIT。

但是我们没有选择既不放弃DevExpress控制也不放弃CUIT。

最近,我创建了一个测试用例,使用MTM测试包含LookUpEdit控件的表单。正如你所猜测的,我无法正确使用参数。

有什么办法可以解决这个问题吗?

回答

3

为您的每个控件,从Control.ControlAccessibleObject继承的CustomAccessibleObject,然后覆盖CreateAccessibilityInstance()方法对你的控制,使其返回CustomAccessibleObject

在你的控制。

public class MyControl : SomeDevExpressControl 
{ 
    protected override AccessibleObject CreateAccessibilityInstance() 
    { 
     return new MyCustomAccessibleObject(this); 
    } 
} 

public class MyCustomAccessibleObject : Control.ControlAccessibleObject 
{ 
    //override stuff here 
} 

详情请参阅http://msdn.microsoft.com/en-us/library/system.windows.forms.accessibleobject.aspx

+0

我会尽快尝试。我希望它适用于我:) – 2011-04-14 06:00:56

0

据我所知,DevExpress控件由TestComplete framework支持。我们(在DevExpress)并不知道支持我们工具的其他框架。我不熟悉编码的UI框架并不能帮助您使用我们的控制:(适应它。

+0

谢谢你。 r答案。正如你所说,DevExpress支持TestComplete。但是我们获得了Visual Studio许可证,因此我们可以使用MTM和编码UI;我们不希望增加TestComplete的额外成本。所以我必须找到一种方法来实现这一点。 – 2011-04-13 08:23:38