编码的UI测试无法正确找到我的控件

时间:2014-04-07 12:30:33

标签: c# user-interface coded-ui-tests

我正在忙着运行一个关于什么应该是一个非常基本的编码UI测试的概念证明。

我的应用程序是Winforms,我有一个允许您登录应用程序的表单。

这里存在2个控件,分别称为_textUsername和_textPassword。

为了简化整个过程,我希望播放能够双击用户名文本字段(_textUsername)。

但是,在播放期间,选择了_textPassword。

我已尝试调整搜索条件以包含控件名称,但之后无法找到控件并失败。

我的问题很简单:我的表单上有2个控件:_textUsername和_textPassword,UI编码测试似乎总能找到_textPassword,我怎样才能找到其他文本框呢?

2 个答案:

答案 0 :(得分:2)

尝试手动编码控件。您可以使用UI Test Builder查找搜索属性。 inspect.exe也很有用。有时候这些属性并不是你所期望的。

            // Controls
        WinWindow logonWindow = new WinWindow();
        WinEdit _textPassword = new WinEdit(logonWindow);
        WinEdit _textUsername = new WinEdit(logonWindow);

        // Add search properties and configurations
        logonWindow.SearchProperties[WinWindow.PropertyNames.Name] = "Main Window Name";
        logonWindow.SearchConfigurations.Add(SearchConfiguration.AlwaysSearch);

        _textPassword.SearchProperties[WinEdit.PropertyNames.Name] = "Password";
        _textPassword.SearchConfigurations.Add(SearchConfiguration.AlwaysSearch);

        _textUsername.SearchProperties[WinEdit.PropertyNames.Name] = "Username";
        _textUsername.SearchConfigurations.Add(SearchConfiguration.AlwaysSearch);

        // Identify each control
        logonWindow.DrawHighlight();
        _textPassword.DrawHighlight();
        _textUsername.DrawHighlight();

答案 1 :(得分:0)

这在客户端应用程序和测试运行器代码之间的DevExpress中是错误的版本。