在播放中设置UIElementText时,编码的UI测试未运行

时间:2018-10-23 09:59:14

标签: wpf coded-ui-tests

我已经使用VS2015编码UI测试构建器记录了编码UI测试。根据我的录音,为我的测试方法创建了以下功能,

    public void RecordedMethod1()
    {
        #region Variable Declarations
        WpfText uIItemText = this.UIMainWindowWindow.UIAddNewRowControlCustom.UIGridCellCustom.UIItemText;
        WpfEdit uIItemEdit = this.UIMainWindowWindow.UIAddNewRowControlCustom.UIGridCellCustom.UIItemEdit;
        WpfText uIItemText1 = this.UIMainWindowWindow.UIAddNewRowControlCustom.UIGridCellCustom1.UIItemText;
        #endregion

        // Double-Click label
        Mouse.DoubleClick(uIItemText, new Point(73, 3));

        //// Failed in the following line and the test is not running after that.
        // Type 'aaa' in text box
        uIItemEdit.Text = this.RecordedMethod1Params.UIItemEditText;

        // Double-Click label
        Mouse.DoubleClick(uIItemText1, new Point(79, 10));

        // Type 'bbb' in text box
        uIItemEdit.Text = this.RecordedMethod1Params.UIItemEditText1;

        // Type '{Enter}' in text box
        Keyboard.SendKeys(uIItemEdit, this.RecordedMethod1Params.UIItemEditSendKeys, ModifierKeys.None);
    }

到达将记录的值设置为uiEditItem.Text的行后,如果测试用例失败,则测试用例不再运行。

我已经在Google上搜索了该解决方案,并找到了一个说,您需要用Kebord.SendKeys重写测试用例,而不是直接将值设置为EditItem的Text属性。

通过这种方式,我在下面的代码行及其工作中进行了代码更改。

// Type 'aaa' in text box
//uIItemEdit.Text = this.RecordedMethod1Params.UIItemEditText;

// Replaced the above line with the SenKeys 
Keyboard.SendKeys(this.RecordedMethod1Params.UIItemEditText);

这是否是解决此问题的唯一方法(Manullay通过使用SendKeys方法而不是直接向uiEditItem.Text属性分配值来重写测试方法)?如果没有,请为此提供可行的解决方案。

0 个答案:

没有答案