可用性测试


可用性测试

如今,我们在应用程序商店中提供了 n 种应用程序,以帮助人们工作。

他们可能会给出负面回应或差评,从而导致特定产品在被有限数量的最终用户下载或安装之前就达到了他们的目的。

简而言之,我们可以说一次差评会损害所有资源技能、延长计划时间、开发产品的热情等等。

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

为了帮助我们理解它在 STLC 中的重要性,在本节中,我们将讨论所有关于可用性测试的内容,其中包括以下基本主题列表:

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

可用性测试

什么是可用性测试?

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

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

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

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

执行可用性测试的主要目的是检查应用程序对于打算使用它的最终用户是否应该易于使用,同时维持客户指定的功能和业务需求。

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

换句话说,我们可以说可用性测试是识别软件产品最终用户通信中的缺陷的独特测试技术之一。这就是为什么它也被称为用户体验 (UX) 测试

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

可用性测试的执行证明了产品的所有必要功能,从测试导航网站的轻松程度到验证其流程和内容,以提出最佳用户体验。

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

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

可用性测试中,可以借助以下特征来描述用户友好性

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

可用性测试

让我们一一看看,以便我们更好地理解:

容易明白

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

易于访问

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

易于访问

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

访问速度更快

  • 访问时软件应该更快,这意味着应用程序的响应时间很快。
  • 如果响应时间很慢,可能会发生用户被激怒的情况。我们必须确保我们的应用程序将在响应时间的 3 到 6 秒内加载。

有效导航

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

良好的错误处理

  • 在编码级别处理错误可确保软件或应用程序无错误且健壮。

  • 通过显示正确的错误消息将有助于增强应用程序的用户体验和可用性。

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

我们需要可用性测试,因为可用性测试是为了构建一个具有良好用户体验的系统。可用性不仅用于软件开发或网站开发,还用于产品设计。

并且客户必须对具有以下参数的应用感到满意。

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

我们还可以测试可用性测试中的不同功能,如下所示:

  • 使用该应用程序有多容易
  • 简单易学的应用

可用性测试的特点

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

可用性测试的其他一些重要特征如下:

  • 它是软件测试**中黑盒测试技术中必不可少的一种非功能测试**技术。
  • 可用性测试在整个系统验收测试级别进行。
  • 通常,可用性测试在软件开发生命周期(SDLC)的早期阶段实施。
  • 可用性测试的执行为最终用户的前景提供了更多的可见性。
  • 可用性测试确保软件产品满足其计划的目的。
  • 它还可以帮助我们发现指定软件产品中的许多可用性错误。
  • 可用性测试主要测试最终产品的用户友好性、有用性、可追溯性、可用性和合意性。
  • 它提供有关真实用户如何使用软件/应用程序的直接输入。
  • 可用性测试包括在测量环境下系统地执行产品的可用性。

可用性测试涵盖的参数

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

但是,可用性测试的影响还不够这些方面,还涵盖了以下各种有助于我们提高软件生产力的约束或参数。

可用性测试

  1. 效率
  2. 记忆力
  3. 准确性
  4. 可学习性
  5. 满意
  6. 错误

让我们分别看看它们,以增强我们对可用性测试的了解:

1. 效率

执行可用性测试所涵盖的第一个约束是效率。在这里,效率参数解释了作为专家的最终用户,可以花最少的时间来执行他/她的基本任务,或者我们可以说,未开发的任务。

2. 记忆力

实施可用性测试所涵盖的第二个约束是可记忆性。应用程序的可记忆性可能是有益的,也可能是无益的。但是,问题出现了,我们如何确定应用程序的可记忆性好坏?

以下几点将完美回答上述出现的问题:

  • 当我们一段时间不要求应用程序并返回应用程序或尝试在没有任何帮助的情况下完成简单任务时,我们可以说应用程序的可记忆性是有益的。
  • 或者,如果我们在一段时间后无法在没有任何帮助的情况下执行简单的任务,我们可以说应用程序的可记忆性没有好处。

3. 准确性

执行可用性测试涵盖的下一个参数是准确度。可用性测试确保产品中不存在不适当/不相关的数据或信息。而且,能够发现特定产品中的断开链接,这有助于我们提高最终产品的准确性。

4. 可学习性

可用性测试包含的另一个约束是可学习性。在这种限制下,最终用户花费最少的时间来学习基本任务。

5. 满意度

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

6. 错误

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

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

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

可用性测试

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

让我们一一总结,以便我们更好地理解:

1. A/B 测试

第一种可用性测试方法是A/B 测试,它 包括创建与原始产品没有本质区别的相似产品图像,这会直接影响用户性能。

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

2. 走廊测试

可用性测试的下一个方法是走廊测试。与其他可用性测试方法相比,它是最成功和最节省成本的方法之一。

在走廊测试中,一些随机的人在没有任何早期产品知识的情况下测试应用程序,而不是熟练的专业人员。因此,如果这些随机人员中的任何一个更有效地测试应用程序,我们将获得更精确的结果和可靠的响应以进一步增强。

走廊测试背后的主要目的是为错误找到最关键的环境,因为这些错误会使简单的功能变得无效率且无精打采。

3. 实验室可用性测试

可用性测试的第三个策略是实验室可用性测试。实验室可用性测试是在查看器存在的情况下执行的。通常,它由团队在单独的实验室中实施。

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

4. 专家评审

可用性测试的另一种通用方法是专家评审。专家评审方法包括在执行可用性测试的指定领域具有深入知识或经验的专业团队的好处。

可用性测试是一致的,因为当产品具有关键功能时,专业人士的知识值得花费。组织需要在发布产品之前找出用户的反应。

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

可用性测试的专家评审实施速度快,比其他类型的可用性测试花费的时间更少,因为专业人员可以轻松识别漏洞并发现产品中的缺陷。

这使得特定过程成本高昂,因为公司需要任命一名技术人员。因此,有时客户会避免此选项。

5. 自动专家评审

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

为了执行这种可用性测试方法,组织需要任命一位非常了解编写自动化脚本和开发自动化框架的资源。

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

自动化专家评审是可用性测试的成功类型之一,因为人工参与较少,自动化脚本较少,遗漏任何问题的机会也较少。

简而言之,我们可以指定它只是对所有可用性约束的基于程序的审查。然而,这种方法的问题是在人执行时缺乏洞察力的审查,这使得它成为一种较慢的测试方法。

它是一种主要使用的可用性测试方法,因为与专家评审相比,它的成本并不高。

6. 远程可用性测试

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

远程可用性测试是远程执行的,如果发现任何问题,也能够报告问题。在这种方法中,响应可以由随机人员而不是技术人员记录和提交。

有时,远程测试是使用视频会议来实现的。与其他类型的可用性测试方法相比,这种方法成本更低。

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

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

同步远程可用性测试

第一部分远程可用性测试同步远程可用性测试。通过对异地可用性测试相关问题的综合研究,提出了同步远程可用性测试方法。

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

异步远程可用性测试

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

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

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

在大多数情况下,可用性测试解决了许多与性能测试过程的输出密切相关的错误。

可用性测试流程

可用性测试过程分为几个重要步骤。这个过程将帮助我们为测试执行期间发现的所有问题提供和创建不同的结果。

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

这让我们了解我们产品中的错误/缺陷,并在将其安装到服务器上之前为我们提供明确的帮助。

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

因此,可用性测试的过程分为以下几个步骤,如下图所示:

可用性测试

第一步:规划

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

可用性测试的目标在计划步骤中进行管理。在这里,目的不是让志愿者坐在我们的应用程序前面并记录他们的活动,而是我们需要修复系统的关键功能和元素。

我们需要将任务交给熟悉这些关键特性的测试工程师。并且可用性测试工程师的可用性测试方法、数量和人口统计数据、测试报告格式在整个规划阶段也是固定的。

Step2:团队招聘

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

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

这些代表或测试工程师准备参加测试会议并验证产品的正确性和可用性。

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

一旦招聘到测试工程师,团队就会被任命为特定的职责和工作。

Step3:测试执行

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

在测试执行步骤中,测试工程师执行可用性测试并执行他们分配的职责。在这种情况下,用户需要对产品进行测试以发现异常情况,如果有,并正确记录。

步骤 4:测试结果文档

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

Step5:数据分析

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

响应或反馈是从数据分析阶段的可用性测试评估中获得的。结果被分类,模式被承认。

在此步骤中,对来自可用性测试的数据进行全面评估,以获得具有表现力的含义,并帮助我们提供可操作的建议,以提高我们产品的整体可用性。

第六步:报告

成功执行以上所有步骤后,我们将最终到达可用性测试过程的最后一步,即Reporting

在这种情况下,我们可以与开发团队、设计师和特定项目的其他参与者以及所有相关文档以及音频、数据库、屏幕录制等报告和共享结果和建议的修改。

可用性测试示例

让我们看一些例子,在那里我们了解可用性测试的使用。

示例 1

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

以下是我们为测试而研究的一些重要参数或约束,并且大多数参数是不可测量的。

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

在这个例子中,我们在4 小时内学习了应用程序 P,但为了理解应用程序 Q,我们需要 6 个小时

让我们在这里看看其他不同的情况,以便更清楚地了解上述示例:

  • 由于我们在 4 小时内了解了应用程序 P,如果将其与应用程序 Q进行比较,它就会变得用户友好
  • 假设外观不适合应用程序 P。在这种情况下,我们在 4 小时内了解应用程序 P;我们不能说应用程序 P 是用户友好的。
  • 因此,在我们说软件的用户友好性之前,我们会研究各种参数。

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

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

假设我们在红色背景中蓝色文本;事实上,我们不想使用它,而是让最终用户感觉使用它。

示例 2

我们正在接受一个银行应用程序,我们为经理生成应用程序。

注意:这里,Manager 是最终用户。

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

假设最终用户在使用应用程序时,有两个测试工程师坐在他/她的后面,并作为开发人员拿着缺陷报告来检查最终用户是否以正确的方式使用应用程序。

最终用户(经理)将逐步检查应用程序,因为他/她知道测试工程师正在监视他/她。

注意:通常,专业测试工程师不执行可用性测试,因为他们知道特定功能的确切位置及其工作原理。 因此,测试工程师对应用程序变得用户友好。 所以只有最终用户才应该进行可用性测试以获得更好的结果。

有时,由于以下原因,测试工程师必须进行可用性测试:

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

示例 3

在这个例子中,公司董事去收集软件(假设是游戏软件)并将其分发给各种最终用户,如员工、朋友等。

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

这位主管会查看他们的反馈,并查看主要反馈,然后整合所有反馈并做出一份报告。

如果已报告所有最终用户的特定功能,则应予以考虑,或者如果该功能仅由 1 或 2 位最终用户报告,则它变得次要。

主要和次要错误合并完成后,将根据导演的要求进行修复。

如果它是一个主要的错误,那么它会首先修复,或者如果它是次要的,那么它可能会延迟或在下一个版本中修复。

注意:不能将所有应用程序都提供给最终用户,因为这取决于应用程序或软件需求。

可用性测试清单

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

注意:在创建可用性检查表时,我们应该开发一个可以对所有页面执行的标准检查表。还有另一种情况,客户提供了应用程序的清单。

为了使可用性测试更加成功,我们将准备标准检查表,即“要检查的点是什么\”。或者,如果我们不制作清单,我们可能会错过应用程序中的某些功能。

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

让我们看一个我们为应用程序创建清单的示例

如果我们拿一个电子商务应用程序并准备清单,它会像下面这样:

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

像这样,我们可以根据产品或应用程序驱动尽可能多的检查表。

可用性测试中的错误

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

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

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

可用性测试的优势

使用可用性测试的一些重要好处如下所述:

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

可用性测试的缺点

实施可用性测试的一些最常见的缺点如下所述:

  • 众所周知,在执行任何软件测试时,预算是最关键的因素。在这里,可用性测试成本计算也起着至关重要的作用。建立可用性测试实验室需要很多资源,有时雇用或招募可用性测试工程师的成本可能很高。
  • 正如我们从上面关于可用性测试的讨论中了解到的,它是由最终用户实施的,有时很难确定可以担任测试工程师的志愿者。
  • 首先,可用性测试并不能 100% 代表实际情况。

结论

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

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

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