如何:在编码的 UI 测试中使用 UI 控件操作和属性

在编码的 UI 测试中使用 UI 测试控件时,这些控件分成两部分:操作和属性。

  • 第一部分包括可对 UI 测试控件执行的操作。 例如,编码的 UI 测试可以模拟鼠标按钮点击 UI 测试控件,或模拟键盘输入来影响 UI 测试控件。

  • 第二部分包括允许您获取和设置 UI 测试控件的属性。 例如,编码的 UI 测试可以获取 ListBox 中的项计数,或将 CheckBox 设置为选中状态。

提示

通过编码的 UI 测试编辑器,可轻松地修改编码的 UI 测试。 使用编码 UI 测试编辑器,可以查找、查看和编辑测试方法。 也可以在 UI 控件图中编辑 UI 操作及其关联控件。 编码 UI 测试编辑器包括在 Microsoft Visual Studio 2010 功能包 2 中。 若要下载该功能包,您必须拥有带有 MSDN 订阅、Microsoft BizSpark 或 MSDN Academic Alliance 的 Visual Studio 2010 旗舰版、Visual Studio 2010 高级专业版或专业测试工具版 2010。 有关更多信息,请参见使用编码的 UI 测试编辑器编辑编码的 UI 测试Microsoft Visual Studio 2010 功能包 2

访问 UI 测试控件的操作

若要对 UI 测试控件执行操作(如鼠标点击或键盘操作),请使用 MouseKeyboard 类中的方法。

通过模拟鼠标来访问 UI 测试控件操作

  • 若要对 UI 测试控件执行面向鼠标的操作(如鼠标单击),请使用 Click

    Mouse.Click(buttonCancel);

通过模拟键盘来访问 UI 测试控件操作

  • 若要执行面向键盘的操作(如在编辑控件中键入内容),请使用 SendKeys

    Keyboard.SendKeys(textBoxDestination, @"C:\\Temp\\Output.txt");

访问 UI 测试控件的属性

若要获取和设置 UI 控件的特定属性值,可以直接获取或设置控件的属性值,也可以通过要获取或设置的特定属性名称使用 UITestControl.GetPropertyUITestControl.SetProperty 方法。

GetProperty 返回一个对象,该对象可强制转换为相应的 TypeSetProperty 为属性的值接受一个对象。

从 UI 测试控件直接获取或设置属性

  • 使用从 T:Microsoft.VisualStudio.TestTools.UITesting.UITestControl 派生的控件(如 T:Microsoft.VisualStudio.TestTools.UITesting.HtmlControls.HtmlList 或 T:Microsoft.VisualStudio.TestTools.UITesting.WinControls.WinComboBox),可以直接获取或设置其属性值,如下所示:

    int i = myHtmlList.ItemCount;
    myWinCheckBox.Checked = true;
    

从 UI 测试控件获取属性

  • 若要从控件获取属性值,请使用 GetProperty

  • 若要指定要获取的控件属性,请在每个控件中使用来自 PropertyNames 类的相应字符串作为 GetProperty 的参数。

  • GetProperty 返回相应的数据类型,但此返回值将被强制转换为 Object。 必须再将返回的 Object 强制转换为相应的类型。

    示例:

    int i = (int)GetProperty(myHtmlList.PropertyNames.ItemCount);

设置 UI 测试控件的属性

  • 若要设置控件中的属性,请使用 SetProperty

  • 若要指定要设置的控件属性,请使用来自 PropertyNames 类的相应字符串作为 SetProperty 的第一个参数,使用属性值作为第二个参数。

    示例:

    SetProperty(myWinCheckBox.PropertyNames.Checked, true);

请参见

任务

如何:通过录制受测应用程序来生成编码的 UI 测试

如何:使用编码的 UI 测试生成器添加 UI 控件和验证代码

如何:通过操作录制生成编码的 UI 测试

如何:创建编码的 UI 测试

参考

WinControl

HtmlControl

WpfControl

UITestControl

GetProperty

SetProperty

概念

使用自动 UI 测试来测试用户界面

编码的 UI 测试的最佳做法

支持编码的 UI 测试和操作录制的配置和平台