Coded UI 测试自动化框架教程
⚡ 智能摘要
Code用户界面测试 (CUIT) 是 Visual Studio 中的一项自动化测试功能,它通过用户界面驱动应用程序运行。本文将介绍 CUIT 的定义、功能、支持的技术、如何创建测试以及最佳实践。

典型的软件自动化 测试与验证 需要自动化工具,例如 Selenium 和 QTP. Coded UI 与这些工具类似,对于功能测试尤其有用。
CodeUI 测试 (CUIT) 使用 Visual Studio IDE 编写脚本,因为录制可以通过以下方式完成: Visual Studio中.
什么是 Coded UI 测试?
Coded UI 测试 (CUIT) 是一种通过用户界面 (UI) 驱动应用程序的自动化测试。因此得名。 Coded UI 测试 (CUIT)。此测试涉及 功能测试 UI 控件。它检查整个应用程序的功能,包括用户界面。它还用于自动化现有的手动测试。
UI 测试 Archi质地
Coded UI 测试功能
Coded UI 功能包括
- 功能测试
- 在 VB/C# 中生成代码
- 与 ALM 故事集成
- 在实验室中或作为构建的一部分进行构建、部署和测试
- 本地、远程运行、数据收集
- 丰富的扩展性
- 意图感知录制和弹性播放
Coded UI 测试 (CUIT) 支持的技术
使用编码的 UI,可以轻松测试具有 UI(用户界面)的应用程序。该应用程序可以基于窗口或基于 Web。
Coded UI 支持以下技术
- 基于窗口的桌面应用程序
- Web 服务(SOAP、ASPX 等)
- Windows 手机应用程序
- WPF(Windows 企业介绍 Foundation)
- Web 应用程序(HTML、Silverlight、HTML5)
为什么使用编码的 UI 进行测试自动化
为什么测试自动化首选编码 UI
- 开发人员和软件测试人员可以使用相同的工具/语言有效地协作。
- 它支持 Web 以及 Windows 项目。
- 元素识别机制是一项很棒的功能 Coded UI。此外,它还支持同步。
- 播放引擎支持“WaitForControlExist”、“WaitForReadyLevel”等功能
- 借助“测试代理”,可以在远程机器上运行自动化测试
- 自动化团队可以使用分层框架的编码 UI 开发复杂的测试
- 软件测试人员可以利用 log4net.dll 捕获异常并有效地记录结果
- Coded UI 工具支持 描述性编程. 它允许软件测试人员根据对象属性自动化场景
- 它支持 AJAX 控件。
如何创建 Coded UI 测试 (CUIT)
要创建编码的 UI 测试,您可以按照下列方式进行。
- 从现有动作记录生成(从手动测试记录转换)
- 从头开始创建新的编码 UI 测试
- 从头编写代码
内容 Coded UI 测试
当您创建编码的 UI 测试时,编码的 UI 测试构建器会创建一个 Map。其中包括待测 UI、测试方法、参数、断言等。对于每个测试,它还会创建一个类文件。
| 文件 | 内容 | 可编辑的 |
|---|---|---|
| UI地图.设计器.cs | 声明部分 UIMap 类方法属性 | 没有 |
| 用户界面地图 | UIMap 类(部分) | 是 |
| CodedUITest1.cs | CodeUITest1 类方法属性 | 是 |
| UIMap.uitest | 测试的 UI XML 映射。只能通过 UI Map 编辑器进行编辑 | 没有 |
- UI地图.设计器.cs :设计器包含 UIMap 的代码视图。当测试人员记录某些 UI 交互或手动将某些对象添加到 UIMap 时会生成该视图。
- 用户界面地图:对 UIMap 所做的任何修改或自定义都存储在此文件中。最初,此文件为空白,稍后可以填充。如果直接对 UIMap.designer.cs 文件进行修改,请确保未记录,否则所有更改都将丢失。
- CodedUITest1.cs:此文件包含编码的 UI 测试类、测试方法、断言调用和方法调用。所有断言和方法默认都从此文件调用。
- UIMap.uitest:它是 UIMap 类的 XML 表示。它包括窗口、控件、属性、方法、操作和断言。它只能通过 UI Map 编辑器进行编辑
接下来在这个 Code在本用户界面教程中,我们将学习如何执行 Coded UI自动化测试。
如何执行 Coded UI 测试
Coded UI 提供了两种不同的方法来测试您的应用程序。
- Coded UI 录制和播放或
- Coded UI 手工编码
您必须按照以下步骤进行操作 Coded UI 测试,
- 创建一个 CodedUI 测试项目
- 添加编码的 UI 测试文件
- 记录一系列动作
- 验证 UI 字段(例如文本框)中的值
- 查看生成的测试代码
- 添加更多操作和断言
- 编辑测试活动和断言的详细信息
- 运行测试
最佳实践 Coded UI 测试 (CUIT)
以下是一些最佳实践 Coded UI 测试自动化框架:
- 使用 Coded UI自动化测试构建器尽可能
- 尽量不要直接修改 UIMap.designer.cs 文件。否则,你对该文件所做的更改将被覆盖。
- 将测试创建为一系列记录的方法
- 每个记录的方法都应作用于单个页面、表单或对话框。此外,为每个新表单、页面或对话框创建一个新的测试方法。
- 创建方法时,请使用有意义的方法名称,而不是默认名称。有意义的名称有助于识别方法的用途
- 如果可能,请将每个记录方法限制为少于 10 个操作。如果 UI 发生变化,这种方法可以更轻松地替换方法。
- 要创建断言,请使用 CodedUI 测试构建器。它会自动向 UIMap.Designer.cs 文件中添加断言方法。
- 如果用户界面发生变化,则重新记录测试方法/断言方法,或者重新记录现有测试方法受影响的部分。
- 如果您直接使用 API 进行编码,请使用 UIMap.Designer.cs 文件中创建的类中的方法和属性。这些类将使您的工作更加可靠和轻松,并有助于提高您的工作效率。
相对比 Coded UI 测试对比 Selenium Vs QTP
以下是对比表格: Coded UI 与 Selenium Vs QTP:
- Selenium 不支持任何 WPF 以及 Windows 应用
- Visual Studio CodedUI 支持 Windows 商店应用程序测试以及 Windows Phone 应用程序测试。没有其他工具支持此功能。
- 测试完成确实支持 Windows 应用程序,但需要安装插件。
相对比 Coded UI 测试对比 Selenium Vs QTP

