GUI 测试 – UI 测试用例(示例)

要了解 GUI 测试,我们首先来了解一下——

什么是 GUI?

计算机应用程序有两种接口。命令行界面是你输入文本,计算机响应命令的界面。GUI 代表图形用户界面,你使用图像而不是文本与计算机交互。

以下是可用于用户和应用程序之间交互的 GUI 元素

GUI

GUI 测试是对上述元素的验证。

什么是 GUI 测试?

GUI 测试是一种软件测试类型,用于检查软件的图形用户界面。图形用户界面 (GUI) 测试的目的是通过检查屏幕和菜单、按钮、图标等控件,确保软件应用程序的功能符合规范。

GUI 是用户所看到的东西。比如你访问 guru99.com,你看到的首页就是网站的 GUI(图形用户界面)。用户看不到源代码。用户看到的是界面。特别是关注设计结构、图像是否正常工作。

GUI Testing

在上面的例子中,如果我们要进行 GUI 测试,我们首先检查图像是否在不同的浏览器中完全可见。

此外,链接是否可用,点击按钮是否能正常工作。

另外,如果用户调整屏幕大小,图像和内容都不应缩小、裁剪或重叠。

GUI 测试的必要性

现在,GUI 测试的基本概念已经清楚了。你脑海中会浮现几个问题

  • 为什么要进行 GUI 测试?
  • 真的需要吗?
  • 测试应用程序的功能和逻辑难道还不够吗??那为什么要浪费时间在 UI 测试上呢?

要得到答案,请以用户的角度思考,而不是测试人员的角度。用户对 XYZ 软件/应用程序一无所知。是应用程序的 UI 决定了用户是否会继续使用该应用程序。

普通用户首先会观察应用程序/软件的设计和外观,以及他理解 UI 的难易程度。如果用户对界面不满意,或者觉得应用程序难以理解,他将永远不会再次使用该应用程序。这就是为什么,GUI 是一个值得关注的问题,应该进行适当的测试,以确保 GUI 没有错误。

GUI 测试中要检查什么?

以下清单将确保软件测试中进行详细的 GUI 测试。

  • 检查所有 GUI 元素的尺寸、位置、宽度、长度以及对字符或数字的接受度。例如,您必须能够向输入字段提供输入。
  • 检查您可以使用 GUI 执行应用程序的预期功能。
  • 检查错误消息是否正确显示。
  • 检查屏幕上不同区域的清晰界限。
  • 检查应用程序中使用的字体是否可读。
  • 检查文本对齐是否正确。
  • 检查字体和警告消息的颜色是否美观。
  • 检查图像是否清晰。
  • 检查图像是否正确对齐。
  • 检查不同屏幕分辨率下 GUI 元素的位置。

GUI 测试技术

GUI 测试技术可分为三部分

手动测试

在这种方法下,测试人员根据业务需求文档中规定的要求手动检查图形界面。

Manual Based Testing

录制和回放

GUI 测试可以使用自动化工具完成。这分为两个部分。在录制期间,自动化工具会捕获测试步骤。在回放期间,录制的测试步骤会在被测应用程序上执行。此类工具的示例是 QTP。

Record and Replay

基于模型的测试

Model Based Testing

模型是对系统行为的图形描述。它帮助我们理解和预测系统行为。模型有助于利用系统需求生成高效的测试用例。进行基于模型的测试时需要考虑以下几点

  • 构建模型
  • 确定模型的输入
  • 计算模型的预期输出
  • 运行测试
  • 比较实际输出与预期输出
  • 对模型采取进一步行动的决定

可以从中派生测试用例的一些建模技术

  • 图表——描绘系统的状态,并在某些输入后检查状态。
  • 决策表——用于确定每个输入结果的表格。

基于模型的测试是一种从需求中生成测试用例的不断发展的技术。与前两种方法相比,它的主要优点是它可以确定 GUI 可能达到的不良状态。

以下是可用于执行自动化 UI 测试的开源工具。

产品 许可协议
AutoHotkey GPL
Selenium Apache
Sikuli MIT
Robot Framework Apache
Water BSD
Dojo Toolkit BSD

GUI 测试用例示例

GUI 测试主要包括

  1. 测试元素的尺寸、位置、宽度、高度。
  2. 测试显示的错误消息。
  3. 测试屏幕的不同部分。
  4. 测试字体是否可读。
  5. 通过缩放(如 640 x 480、600×800 等)测试不同分辨率下的屏幕。
  6. 测试文本和其他元素(如图标、按钮等)的对齐是否正确。
  7. 测试字体的颜色。
  8. 测试错误消息、警告消息的颜色。
  9. 测试图像是否清晰。
  10. 测试图像的对齐方式。
  11. 拼写测试。
  12. 用户在使用系统界面时不能感到沮丧。
  13. 测试界面是否美观。
  14. 测试滚动条是否根据页面大小(如果有)正常工作。
  15. 测试禁用字段(如果有)。
  16. 测试图像的大小。
  17. 测试标题是否正确对齐。
  18. 测试超链接的颜色。

演示:如何进行 GUI 测试

这里我们将为以下屏幕使用一些示例测试用例。

Demo: How to do GUI Test

以下是测试用例的示例,其中包含 UI 和可用性测试场景。

测试用例 01 - 验证带有标签“源文件夹”的文本框是否正确对齐。

测试用例 02 - 验证带有标签“”的文本框是否正确对齐。

测试用例 03 - 验证标签名为“浏览”的按钮是否位于名为“源文件夹”的文本框末尾。

测试用例 04 - 验证标签名为“浏览”的按钮是否位于名为“”的文本框末尾。

测试用例 05 - 验证带有标签“名称”的文本框是否正确对齐。

测试用例 06 - 验证标签“修饰符”包含 4 个名为 public、default、private、protected 的单选按钮。

测试用例 07 - 验证标签“修饰符”包含 4 个单选按钮,它们在同一行中正确对齐。

测试用例 08 - 验证标签“修饰符”下的标签“超类”包含一个下拉菜单,该下拉菜单必须正确对齐。

测试用例 09 - 验证标签“超类”包含一个带有标签“浏览”的按钮,该按钮必须正确对齐。

测试用例 10 - 验证单击任何单选按钮时,默认鼠标指针必须更改为手形鼠标指针。

测试用例 11 - 验证用户不能在“超类”下拉菜单中输入内容。

测试用例 12 - 验证如果出现错误选择,必须生成适当的错误。

测试用例 13 - 验证在必要时,错误必须以红色显示。

测试用例 14 - 验证错误消息中必须使用正确的标签。

测试用例 15 - 验证每次默认只能选择一个单选按钮。

测试用例 16 - 验证 TAB 键在从上一个字段跳转到下一个字段时必须正常工作。

测试用例 17 - 验证所有页面都必须包含正确的标题。

测试用例 18 - 验证页面文本必须正确对齐。

测试用例 19 - 验证更新任何字段后,必须显示适当的确认消息。

测试用例 20 - 验证只能选择 1 个单选按钮,并且可以选择多个复选框。

GUI 测试中的挑战

在软件工程中,进行回归测试时最常见的问题是应用程序 GUI 频繁更改。很难测试和识别是问题还是增强。当您没有任何关于 GUI 更改的文档时,问题就会显现出来。

GUI 测试工具

以下是流行的 GUI 测试工具列表

  1. Selenium
  2. QTP
  3. Cucumber
  4. SilkTest
  5. TestComplete
  6. Squish GUI Tester

点击此处了解SeleniumQTPCucumber

结论

软件产品的成功在很大程度上取决于 GUI 如何与用户交互以及使用其各种功能的便捷性。因此,GUI 测试非常重要。手动 GUI 测试有时是重复和乏味的,因此容易出错。强烈建议对 GUI 测试进行自动化。