可用性测试

2025年3月17日 | 阅读18分钟

如今,应用商店里有各种各样的应用程序,旨在帮助人们工作。

而用户可能会给出负面评价或低评分,这可能导致某个产品在有限的用户下载或安装之前就走向终结。

简而言之,一个糟糕的评论就可能毁掉所有的资源、投入的时间、精心的规划、开发产品的热情等等。

这就是为什么可用性测试应运而生,以解决这类问题,因为可用性测试具有重要的意义,并且在STLC (软件测试生命周期)中由测试工程师执行。

为了帮助我们理解其在STLC中的重要性,本节将讨论可用性测试的方方面面,包括以下一系列重要主题:

  • 什么是可用性测试?
  • 为什么我们需要进行可用性测试?
  • 可用性测试的特点
  • 可用性测试涵盖的参数
  • 可用性测试的各种策略
  • 可用性测试流程
  • 可用性测试示例
  • 可用性测试清单
  • 可用性测试中的缺陷
  • 可用性测试的优点
  • 可用性测试的缺点
Usability Testing

什么是可用性测试?

可用性测试是一种重要的软件测试技术,属于非功能性测试

它主要用于以用户为中心的交互设计,以检查软件产品的可用性或易用性。可用性测试的实施需要对应用程序有深入的了解,因为它是一种广泛的测试。

通常,可用性测试是从最终用户的角度进行的,以验证系统是否有效运行。

检查应用程序的用户友好性、效率和准确性即为可用性测试。

执行可用性测试的主要目的是确保应用程序易于最终用户使用,同时满足客户指定的整体功能和业务需求。

当我们进行可用性测试时,它确保了已开发的软件在使用系统时简单明了,用户不会遇到任何问题,并使最终用户的生活更轻松。

换句话说,我们可以说可用性测试是识别软件产品最终用户交互中缺陷的一种独特测试技术。因此,它也被称为用户体验 (UX) 测试

它帮助我们修复特定网站或应用程序中的许多可用性问题,甚至确保其卓越性和功能性。

可用性测试的实施验证了产品的所有必要功能,从测试网站导航的便捷性到验证其流程和内容,以提供最佳的用户体验。

通常,可用性测试由真实用户执行,而不是由开发团队执行,因为我们已经知道开发团队是产品的创建者。因此,他们可能无法识别与用户体验相关的更小的缺陷或错误。

注意:它可以在软件开发生命周期 (SDLC)设计阶段进行实施,以便我们更清楚地了解用户的需求。

可用性测试中,用户友好性可以通过以下特征来描述:

  • 易于理解
  • 易于访问
  • 外观和感觉
  • 更快的访问速度
  • 有效的导航
  • 良好的错误处理
Usability Testing

让我们逐一了解它们,以便更好地理解。

易于理解

  • 软件或应用程序的所有功能都必须对最终用户可见。

易于访问

  • 每个人都应该能够访问用户友好的应用程序。

易于访问

  • 应用程序的外观和感觉应该出色且具有吸引力,以引起用户的兴趣。
  • 软件的GUI应该很好,因为如果GUI不好,用户在使用应用程序或软件时可能会失去兴趣。
  • 产品质量达到客户要求的标准。

更快的访问速度

  • 软件访问速度应该很快,这意味着应用程序的响应时间很短。
  • 如果响应时间很慢,用户可能会感到恼火。我们必须确保我们的应用程序在3到6秒的响应时间内加载。

有效的导航

  • 有效的导航是软件最重要的方面。以下是一些关于有效导航的方面:
  • 良好的内部链接
  • 信息丰富的页眉和页脚
  • 良好的搜索功能

良好的错误处理

  • 在编码级别处理错误可以确保软件或应用程序没有缺陷并且健壮。
  • 显示正确的错误消息将有助于增强应用程序的用户体验和可用性。

为什么我们需要进行可用性测试?

我们需要可用性测试,因为可用性测试旨在构建具有出色用户体验的系统。可用性不仅用于软件开发或网站开发,还用于产品设计。

客户必须对您的应用程序在以下参数方面感到满意:

  • 应用程序的流程应该很好
  • 导航步骤应该清晰
  • 内容应该简单
  • 布局应该清晰
  • 响应时间

我们还可以在可用性测试中测试以下各种功能:

  • 使用应用程序的难易程度
  • 学习应用程序的难易程度

可用性测试的特点

可用性测试的实施有助于提高特定应用程序和软件的最终用户体验。通过可用性测试,软件开发团队可以快速检测系统中的各种可用性错误并快速修复它们。

可用性测试的一些其他重要功能如下:

  • 它是非功能性测试技术的重要组成部分,属于黑盒测试技术,是软件测试的一部分。
  • 可用性测试在系统测试验收测试级别进行。
  • 通常,可用性测试在软件开发生命周期 (SDLC) 的早期阶段实施。
  • 可用性测试的执行提供了对最终用户前景的更多可见性。
  • 可用性测试确保软件产品达到其计划的目的。
  • 它还有助于我们在特定软件产品中发现许多可用性错误。
  • 可用性测试主要测试最终产品的用户友好性、有用性、可追溯性、可用性和吸引力。
  • 它直接提供真实用户如何使用软件/应用程序的输入。
  • 可用性测试包括在测量环境中系统地执行产品的可用性。

可用性测试涵盖的参数

为了测试软件的质量、可用性、用户友好性和其他重要因素,可用性测试起着重要作用。它还有助于组织为其目标受众提供更广泛的服务。

然而,可用性测试的影响仅限于这些方面,并且还涵盖了以下各种限制或参数,有助于我们提高软件的生产力。

Usability Testing
  1. 效率
  2. 记忆性
  3. 精度
  4. 易学性
  5. 满意度
  6. 错误

让我们单独看看它们,以提高我们对可用性测试的理解。

1. 效率

可用性测试执行所涵盖的第一个限制是效率。这里,效率参数解释了专家最终用户可以在最短的时间内执行其基本任务或我们所说的未开发任务。

2. 记忆性

可用性测试实施所涵盖的第二个限制是记忆性。应用程序的记忆性可能是有益的或无益的。但是,问题来了,我们如何决定应用程序的记忆性是好是坏?

以下几点将给出上述问题的完美答案:

  • 当我们一段时间不使用应用程序,然后返回应用程序或尝试在无人协助的情况下完成简单任务时,我们可以说应用程序的记忆性是有益的。
  • 或者,如果我们一段时间后仍然无法在无人协助的情况下完成简单任务,我们可以说应用程序的记忆性是没有益的。

3. 准确性

通过执行可用性测试所涵盖的下一个参数是准确性。可用性测试确保产品中不存在不当/不相关的数据或信息。此外,它还能发现特定产品中的损坏链接,这有助于我们提高最终产品的准确性。

4. 易学性

可用性测试所涵盖的另一个限制是易学性。在此限制下,最终用户需要最短的时间来学习基本任务。

5. 满意度

可用性测试的执行确保了客户满意度,因为我们知道满意的客户可以轻松自由地使用应用程序。

6. 错误

可用性测试所涵盖的最后一个也是最重要的参数是错误检测。在这一点上,我们试图帮助最终用户纠正他们之前犯的错误,并重新完成他们的任务。

各种可用性测试策略/可用性测试方法

与其他类型的软件测试一样,可用性测试也包含各种方法或策略。以下是一些最常用的可用性测试方法:

Usability Testing
  • A/B 测试
  • 走廊测试
  • 实验室可用性测试
  • 专家评审
  • 自动化专家评审
  • 同步远程可用性测试
  • 异步远程可用性测试

让我们逐一总结它们,以便更好地理解。

1. A/B 测试

第一个可用性测试方法是A/B 测试,它包括创建一个与原始产品相似但缺少一项关键要素的图像,该要素会直接影响用户性能。

A/B 测试涉及比较分析,我们可以通过一些其他元素来理解,例如颜色、文本或界面差异

2. 走廊测试

下一个可用性测试方法是走廊测试。与其他的可用性测试方法相比,它是最成功且成本效益最高的方法之一。

在走廊测试中,一些随机人员在不具备产品先验知识的情况下测试应用程序,而不是由熟练的专业人员进行。因此,我们将获得更精确的结果和可靠的反馈,以便进一步改进,前提是这些随机人员能够更有效地测试应用程序。

走廊测试的主要目的是找出产生错误的最高环境,因为这些错误可能会使简单功能变得无效且运行迟缓。

3. 实验室可用性测试

可用性测试的第三种策略是实验室可用性测试。实验室可用性测试是在观众在场的情况下进行的。通常,它由团队在单独的实验室房间中实施。

在这种方法中,观众负责定期检查测试工程师的表现,并将测试结果报告给相关团队。

4. 专家评审

可用性测试的另一个通用方法是专家评审。专家评审方法包含拥有特定领域专业知识或经验的专业团队的优势,用于执行可用性测试。

当产品具有关键功能时,专家的知识就具有价值,因此可用性测试非常一致。组织需要在发布产品之前找出用户的反应。

要求特定领域的专家测试产品、给出反馈,然后提交结果。为了提交结果,专家评审也可以远程进行。

与其它类型的可用性测试相比,专家评审的可用性测试执行速度快且耗时短,因为专业人士可以轻松识别漏洞并发现产品中的缺陷。

这使得该过程变得昂贵,因为公司需要聘请技术人员。因此,有时客户会避免这种选择。

5. 自动化专家评审

可用性测试的下一个重要方法是自动化专家评审。顾名思义,自动化专家评审是通过编写自动化脚本来执行的。

要执行此可用性测试方法,组织需要聘请一位熟悉编写自动化脚本和开发自动化框架的资源。

自动化测试工程师编写测试脚本,当脚本被触发时,我们可以轻松地执行测试用例。测试执行后,会记录并提交结果。

自动化专家评审是一种成功的可用性测试类型,因为人为干预少,有自动化脚本,并且遗漏问题的可能性更小。

简单来说,我们可以将其定义为对所有可用性约束的基于程序的审查。然而,这种方法的缺点在于执行时缺乏深入的审查,这使其成为一种较慢的测试方法。

它是最常用的可用性测试方法之一,因为它不像专家评审那样昂贵。

6. 远程可用性测试

可用性测试的下一个方法是远程可用性测试。顾名思义,远程可用性测试由位于远程地点的人员进行,这意味着他们位于不同的州,有时甚至位于其他国家,以实现他们的测试目标。

远程可用性测试是远程执行的,并且如果在识别到任何问题时能够报告。在此方法中,响应可以由随机人员记录并提交,而不是由熟练人员。

有时,远程测试会通过视频会议进行。并且与其他类型的可用性测试方法相比,这种方法成本较低。

远程可用性测试可分为以下两部分,如下所述:

  • 同步远程可用性测试
  • 异步远程可用性测试

同步远程可用性测试

远程可用性测试的第一部分是同步远程可用性测试。在对通过远程位置执行可用性测试相关问题进行全面研究后,提出了同步远程可用性测试方法。

我们可以使用 WebEx 工具进行远程网页共享视频会议。然而,这需要实际存在的有效性才能使这种集体测试过程取得成功。

异步远程可用性测试

远程可用性测试方法的第二种方法是异步远程可用性测试。

异步远程可用性测试方法有助于我们将用户响应轻松地划分为各种人口统计学和性能类型。

这是最常用的方法,它使用用户日志、用户界面响应以及用户环境本身的测试。

在大多数情况下,可用性测试可以解决许多与性能测试过程输出相关的缺陷。

可用性测试流程

可用性测试的过程包含几个重要步骤。此过程将帮助我们为在测试执行期间识别的所有问题提供并创建不同的结果。

在实际应用中,可用性测试从用户的角度测试应用程序的行为,尽管这是一个耗时的过程,但能为测试人员提供最精确的实际测试结果。

这让我们对我们产品中的错误/缺陷有了大致了解,并在将其安装到服务器之前明确地帮助我们。

可用性测试过程遵循一组精确的步骤,以帮助团队从最终用户那里获得详细而有用的反馈。

因此,可用性测试的过程通过以下步骤完成,如我们在下图中所见:

Usability Testing

步骤 1:规划

可用性测试的第一步是规划,在此阶段,团队制定测试计划并生成一些文档样本,以帮助测试团队完成可用性测试任务。这是可用性测试过程中最重要和最关键的阶段之一。

可用性测试的目标在规划阶段确定。这里的目标不是让志愿者坐在我们的应用程序前并记录他们的活动,而是我们需要固定系统的关键功能和元素。

我们需要给熟悉这些关键功能的测试工程师分配任务。并且在规划阶段确定可用性测试方法、数量和可用性测试工程师的人口统计学特征,以及测试报告格式。

步骤 2:团队招募

规划阶段完成后,我们将进入可用性测试的下一步,即团队招募。

顾名思义,在这里,我们将根据预算和产品密度聘请或招募最终用户代表、参与者或测试工程师。

这些代表或测试工程师准备坐在测试会话中,并验证产品的正确性和可用性。

主要,这些测试工程师的选择基于测试的需要以及测试计划中提到的人数。

一旦完成测试工程师的招聘,团队将被分配特定的职责和工作。

步骤 3:测试执行

规划和团队招募步骤成功完成后。我们将进入下一步,即测试执行

在测试执行步骤中,测试工程师执行可用性测试并履行其分配的职责。在这种情况下,用户需要测试产品以查找任何不规则之处,并正确记录它们。

步骤 4:测试结果文档

测试结果文档步骤包括基于测试执行步骤的结果,然后进行进一步分析。

步骤 5:数据分析

测试结果文档完成后,我们将进入可用性测试过程的下一步,即数据分析

在数据分析阶段,将获取可用性测试评估的响应或反馈。结果被分类,模式被识别。

在此步骤中,将完全评估可用性测试的数据,以获得有意义的见解,并帮助我们提供可行的建议来提高我们产品的整体可用性。

步骤 6:报告

成功完成上述所有步骤后,我们将最终到达可用性测试过程的最后一步,即报告

在此,我们可以向开发团队、设计师以及该项目的其他参与者报告并分享结果和建议的修改,以及所有相关文档,如音频、数据库、屏幕录制等。

可用性测试示例

让我们看一些示例,通过这些示例我们可以理解可用性测试的用途。

示例 1

假设我们有两个应用程序,名为P 和 Q,它们不同但执行相同的工作,我们将看到哪一个更用户友好。

以下是我们在测试中查看的一些重要参数或约束,其中大多数参数是不可衡量的。

  • 外观和感觉
  • 导航应该简单
  • 速度
  • 兼容性
  • 帮助
  • 组件位置
  • 特点

在这个例子中,我们花了4 小时来学习应用程序 P,但我们花了 6 小时来理解应用程序 Q。

让我们看一些其他情况,以更清楚地理解上述示例:

  • 既然我们花了 4 小时就学会了应用程序 P,那么与应用程序 Q 相比,它就更用户友好。
  • 假设应用程序 P外观和感觉不合适。在这种情况下,尽管我们在 4 小时内学会了应用程序 P;我们仍然不能说应用程序 P 用户友好。
  • 因此,在我们说一个软件用户友好之前,我们会考察各种参数。

注意:什么是外观和感觉?

在可用性测试中,外观和感觉是最常用的术语。外观和感觉用于描述应用程序应该看起来令人愉悦。

假设我们在红色背景上使用蓝色文本;我们确实会觉得不想使用它,并且会给最终用户一种不想使用的感觉。

示例 2

我们以一个银行应用程序为例,我们为经理制作了该应用程序。

注意:此处,经理是最终用户。

现在,如果最终用户(经理)开始在测试工程师面前使用该应用程序。

假设有两名测试工程师坐在最终用户后面,当他/她使用应用程序时,并以开发者的身份记录缺陷报告,以检查最终用户是否正确使用该应用程序。

最终用户(经理)会一步一步地检查应用程序,因为他/她知道测试工程师在看着他/她。

注意:通常,专业测试工程师不执行可用性测试,因为他们确切地知道特定功能会在哪里失败以及它如何工作。
因此,测试工程师熟悉应用程序。
所以只有最终用户应该进行可用性测试以获得更好的结果。

有时测试工程师不得不进行可用性测试,原因如下:

  • 没有钱花在可用性测试上。
  • 不想外包给其他公司。

示例 3

在此示例中,公司总监去收集软件(假设是一款游戏软件),并将其分发给各种最终用户,如员工、朋友等。

现在,这些最终用户将使用特定的游戏软件并向总监提供反馈。

这位总监查看他们的反馈,查看主要反馈,然后整合所有反馈并制作一份报告。

如果所有最终用户都报告了某个特定功能,那么该功能就应该被考虑;如果只有 1 或 2 个最终用户报告了该功能,那么它就变成次要的。

在整合了主要和次要缺陷后,将根据总监的要求进行修复。

如果这是一个主要缺陷,它将首先修复;如果是一个次要缺陷,它可能会被延迟或在下一个版本中修复。

注意:并非所有应用程序都可以提供给最终用户,这取决于应用程序或软件的需求。

可用性测试清单

可用性测试清单包含所有与可用性测试相关的文档。在可用性测试中,我们不编写测试用例,因为我们使用标准的可用性测试清单,并且我们只测试应用程序的外观和感觉。

注意:在创建可用性清单时,我们应该开发一个可用于所有页面的标准清单。还有一种情况是客户为应用程序提供清单。

为了使可用性测试更加成功,我们将准备标准清单,这意味着“需要检查哪些要点”。或者,如果我们不制作清单,我们可能会错过应用程序中的一些功能。

  • 创建清单
  • 评审清单
  • 执行清单/批准清单
  • 生成清单报告(执行报告)

让我们看一个示例,其中我们为应用程序创建清单。

如果我们以一个电子商务应用程序为例并准备清单,它将如下所示:

  • 所有图片都应具有 alt 标签(工具提示)。
  • 登录功能应包含“忘记密码”链接。
  • 所有页面都应包含指向应用程序主页的链接。
  • 应该能够访问所有组件。

像这样,我们可以根据产品或应用程序生成任意数量的清单。

可用性测试中的缺陷

可用性测试中的一个常见错误是在设计过程的后期组织研究。如果我们等到产品发布,我们就没有时间或金钱来解决任何问题。而且我们可能已经浪费了很多精力以错误的方式创建了产品。

此外,我们在测试任何软件或应用程序时还可能遇到更多错误。这些错误可能是路径漏洞潜在错误

路径漏洞和潜在错误:路径漏洞和潜在错误是指在执行可用性测试时,开发人员和测试工程师可见的错误。

可用性测试的优点

使用可用性测试的一些主要好处如下:

  • 可用性测试的执行有助于我们验证软件的可用性。
  • 它提高了用户对软件产品的满意度,并确保交付高质量的产品。
  • 可用性测试的实施将提高软件产品的充分性和一致性。
  • 通过可用性测试,我们可以在交付最终产品之前发现可用性问题。
  • 最终用户总是渴望使用该应用程序。
  • 可用性测试的执行有助于我们识别软件中可能的错误和缺陷。
  • 它有助于使软件更高效、更适用。
  • 使用可用性测试将有助于我们获得相关且精确的用户响应。
  • 它提高了软件产品的充分性和一致性。

可用性测试的缺点

如上讨论,实施可用性测试的一些最常见缺点如下:

  • 正如我们所知,预算是在执行任何软件测试时最重要的因素。在这里,可用性测试成本也起着重要作用。它需要大量资源来建立可用性测试实验室,有时聘请或招募可用性测试工程师可能很昂贵。
  • 正如我们在上述可用性测试讨论中从上面所理解的,它是由最终用户实施的,有时很难找到可以作为测试工程师工作的志愿者。
  • 主要来说,可用性测试并非 100% 代表实际情况。

结论

在看到所有重要的可用性测试主题之后,我们可以得出结论,它是一个广泛的测试过程,需要对该领域有更高的理解以及创造性的思维。

对全球组织而言,实施可用性测试是必要的,因为它是最有效的软件测试方法之一,有助于测试工程师和开发人员维护软件的可用性、正确性、一致性、性能和其他重要特性。

因此,如果在软件开发初期阶段就执行可用性测试,我们可以保证应用程序的易用性,并交付一个满足用户期望的重要产品。


下一主题测试文档