UI测试是什么?

什么是用户界面测试,名词解释定义是  

“User Interface, 用户界面”一词不言而喻:用户界面指的是用户与网站或应用程序交互的一个界面。当然,用户界面的质量决定了用户对网站或应用程序的第一印象,(也有可能是最后印象)。 一个软件开发项目的成败主要取决于UI设计和UI功能设计,这也是为什么软件开发人员和软件测试人员越来越多地将UI界面测试(用户界面测试)看作软件开发蓝图设计的重要组成部分。

UI是指终端用户在使用软件时与之产生的交互。比如说,用户打开酷狗音乐网站并单击搜索按钮进行选歌等等,用户在网站上的每一步操作都是在用户界面上完成的。登录界面测试也是UI测试的主要内容。

随着各行各业的网站或应用程序在业界内的竞争对手越来越多,用户体验的标准也在不断提高。UI测试的目的:通过满足用户体验标准来确保网站或应用程序的每个功能都能如期正常工作。测试网站或应用程序在视觉和听觉方面是否令人愉悦,能让用户感兴趣也是一个UI测试点。我们也可以简单的将UI测试理解为终端用户在使用软件时的一种体验。

本文为UI初学提供了详细的指导指南,介绍的用户界面测试内容有:什么是UI测试、UI测试的主要内容、UI自动化测试的必要性,以及UI测试怎么测。


UI测试是什么?

GUI测试是什么?

UI测试,也称GUI测试,是一种机制测试,主要测试用户与软件各部分之间的交互。

GUI测试内容包括什么?

这意味着UI测试的是视觉元素,用于验证软件在功能和性能方面是否能按需运行。

GUI测试内容:确保UI函数没有bug。


UI测试的特点是什么?

网站是由CSS、javascript和许多其他编程语言创建的Web元素组成。 UI测试执行的是Web元素功能测试,主要是验证它们的有效性。UI测试点:检查软件的视觉和结构设计部分,即用户关心的部分,而不是软件UI的内部逻辑。

界面测试包含哪些方面?

UI测试涵盖了各种视觉标记和基于图形的图标-工具栏(toolbars)、字体(fonts)、菜单(menus)、文本框(text boxes)、单选按钮(radio buttons)、复选框(checkboxes)、颜色(colors)等。


UI测试的测试要点:

  • 软件功能
  • 软件视觉设计
  • 软件性能
  • 软件可用性
  • 软件合规性

UI测试的主要内容

界面测试内容有哪些:

以下是UI常见测试用例,UI测试更倾向于验证 ,一起来看看UI测试主要测哪些问题:

  • 数据类型错误:测试验证了在某些特定数据字段(比如日期、金额等)是否只允许输入有效数据。数据类型错误的英语翻译:Data type errors.
  • 判别测试字段>字段宽度:测试验证了限制用户在指定的字符数限制框内输入某些文本字段(text fields)是否有效。
  • 导航测试>导航元素:测试验证了网站或应用程序页面上的所有导航功能是否都能正常工作,并指引用户打开正确的网页地址。
  • 进度条测试用例>进度条:测试验证了当前正在打开的页面或屏幕页面完成加载所需时间,进度条是为了能让用户知道该页面正在加载。
  • 提前键入 (Type-ahead):提前键入用于UI设计下拉列表框。UI设计下拉列表框怎么实现选择功能?在包含多个选项的UI下拉菜单中,用户在键入第一个字母时就会出现正确的搜素结果。避免让用户从一个长列表中筛选结果,这会造成不好的用户体验。
  • 滚动测试>表滚动:如果网站有数据表,且不止一页,那就需要设置表头固定内容可滚动功能,让用户在标题可见的同时可以滚动所有数据。
  •  软件日志测试>错误日志记录:测试验证了在系统有误的情况下,软件是否能将错误详情记录到日志文件中以便稍后进行审查。
  •  菜单测试用例>菜单选项:测试验证了软件是否能正确显示菜单选项里列出的指定的地理位置信息(如果有该功能)。
  • 快捷工作方式:如果软件支持快捷工作方式,则此测试验证了软件或应用程序快捷方式能否在多个浏览器、平台和设备上如预期般正常打开。

除了以上界面UI测试的方法之外,还建议你对应用程序进行端到端UI测试。例如,在涉及到用户操作的应用程序界面上运行UI测试: 账号登录>将商品类目添加到购物车>查看购物车>支付>输入送货地址>下单。

由于以上操作是用户访问商务网站的一般行为,所以测试人员必须保证用户在访问商务网站时没有任何中断或故障出现,不然网站可能会面临金钱损失和流量损失的风险。


UI测试要点

UI测试方法-自动化测试和手动测试

UI测试可以分为自动测试和手工测试。 测试人员可以根据应用程序的特征以及团队自身优势来决定是采用其中一种测试方法还是两者皆用。

  • 手工测试:在运用手工测试方法时,测试人员会手动测试网站或应用程序的所有功能来检查它们是否有误。当软件的UI元素数量有限时,使用手工测试方法合乎情理,最初我们的网站或应用程序都是通过手动测试来完成的。 然而,我们这个时代大都是技术娴熟的用户,而且多数用户都期望软件能有数百个丰富的分层用户界面,这就意味着有数千个UI元素需要被验证。

这就使得手工测试低效且耗时,还有人为出错的可能。设想一下,如果页面必须完成多组测试数据,那么用户需要手动将信息输入到有10个以上输入字段的页面中多少次。

  • 自动化测试技术:自动化测试的优势是显而易见的。自动测试完成得更快,这在一个用户期望在较短的时间交付高质量软件的行业里是非常必要的。 Selenium自动化测试框架允许软件实现多个测试场景同时运行,也能快速、正确地重复运行相同的测试(如有需要也可做不同的测试)。

UI自动化测试:

此外,自动化测试方法避免了人为错误。只要测试脚本编写正确,使用的测试工具得当,就能确保测试结果的准确性。自动化测试框架也能设置自动记录测试结果,并在测试完成后与测试团队分享。 使用手工测试方法,团队测试人员需要独立完成测试,并提取测试结果,将其写在报告中,分享给适合的人。其次,手工测试对测试人员也有时间和精力上的要求。

Selenium UI Testing:

Selenium自动化测试流程是UI测试的最佳也是最方便选择。 尤其是对模拟跨浏览器测试来说更是如此。UI自动化测试需要在多个浏览器、设备以及操作系统(OS)上执行,这样无论客户是以何种方式打开软件都能正常访问及使用软件。这较之于使用手动测试方法在多个设备和浏览器上手动运行UI测试、并重复编写相同的测试用例来说,自动测试技术显然更为高效。

Author: Maha

我是Wintesting中国站的 Maha,目前职位是市场营销&内容经理,负责CN Wintetsing网站内容的设计、编写与发布,同时还监管国内市场营销工作。与此同时,我也是一名IT培训教员,我的教育背景和所从事的行业都是与IT工程师行业及信息通信技术相关。此外,除了编写中英双语的新兴技术文稿外,我还是一名IT翻译工作者,累积翻译字数逾近10万,涉及的领域有大数据、人工智能、IoT、机器学习、云计算、AR&VR、计算机网络技术、计算机网络安全技术、应用程序测试、软件测试、系统测试、网络测试及IT基础设施等。如果你需要相关领域的内容编写或翻译工作请联系我。