fbpx

Get your 6-month No-Cost Opt-Out offer for Unlimited Software Automation?

兼容性测试是许多质量保证策略的一个组成部分,使公司能够看到他们的软件在不同的平台上是否表现正确。 即使是桌面专用程序,也有几个主要的操作系统需要考虑,还有数百个–如果不是数千个–可能影响稳定性的硬件差异。 了解兼容性测试过程及其通常的好处可以帮助保证一个有效的产品发布,能够接触到尽可能多的用户。

虽然兼容性测试可以提供许多好处,但也有许多重大挑战,软件测试团队必须克服这些挑战,以最大限度地发挥这种技术的潜力。 还有一些具体的做法,这些部门应该采用,以获得最好的结果–并确保全面的整体测试覆盖。

在这篇文章中,我们仔细研究了兼容性测试,包括团队必须遵循的基本步骤,以及目前最有用的测试工具。

目录

什么是兼容性测试?

软件测试与工程?

压力测试--类型、过程、工具、检查表及其他

兼容性测试对不同设备、硬件和固件的软件进行检查,以确保其性能达到团队的预期。 每个用户都可能在一个新的设备上参与他们的项目,这使得公司能够保证他们都有一个类似的体验非常重要。 例如,兼容性测试可以包括检查一个应用程序的每个功能,以确保它在每个主要的操作系统上运行。

如果没有彻底的兼容性测试,一个公司完全有可能发布一个不适合某些流行设备的应用程序。 这些检查必须是全面的,因为问题可能以任何方式出现–例如,这个应用程序可能在一个非常特殊类型的显卡上无法运行。 当与其他形式的软件测试搭配时,质量保证团队可以确保他们的程序已经准备好发布。

 

1.何时以及为何需要对移动应用程序、网站、系统和跨浏览器进行兼容性测试?

α测试与β测试

公司在其软件测试阶段进行兼容性测试,特别是当他们有一个 “稳定 “版本的程序,准确地反映了它将如何为客户服务。 这在阿尔法验收和其他形式的测试之后继续进行,这些测试通常是为了寻找一般的稳定性和与功能有关的问题。 如果一个应用程序在兼容性测试阶段面临问题,这通常是由于特定的兼容性相关问题。 过早地实施这些检查可以有效地使它们成为多余的,因为在程序开发周期的后期的微小变化可以从根本上影响兼容性。

浏览器和软件的兼容性测试很重要,因为它可以帮助公司发布一个他们知道在几乎所有可能的设备上都能充分运行的应用程序。 例如,跨浏览器兼容性测试尤其有助于确保使用Opera的人与使用Firefox和其他主要浏览器的人有相同的体验。 团队通常在时间和预算允许的范围内测试尽可能多的硬件/软件变化。 这意味着他们必须智能地优先考虑客户更可能使用的系统或浏览器,让他们保证广泛的测试覆盖面和可行的产品。

 

2.当你不需要做软件兼容性测试时

检查表软件测试过程

公司可能为一个特定的操作系统或模型创建一个定制的应用程序,大量限制了必要的检查的数量。 例如,如果这个程序不需要浏览器,那么软件测试中的跨浏览器兼容性测试可能是多余的。 时间也可能是影响公司进行这些测试能力的一个严重因素,尽管测试团队仍应努力保证主要系统和浏览器与软件兼容。 也有一些项目不能从基本的兼容性测试中受益。

 

3.谁参与了兼容性测试?

谁应该参与软件测试自动化工具和规划

以下是软件测试中进行兼容性测试的主要人员:

 

1. 开发者

开发团队在开发过程中检查应用程序在一个平台上的性能,这甚至可能是该公司打算发布程序的唯一设备。

 

2. 测试人员

公司内部或外部聘请的质量保证团队,作为应用程序的兼容性测试阶段的一部分,检查许多可能的配置,包括所有主要的操作系统和浏览器。

 

3.客户

该公司的客户可能有团队无法彻底测试的硬件或配置,有可能使他们的用户体验成为对该特定设置的第一次真正检查。

 

兼容性测试的好处

什么是软件测试?

软件兼容性测试的通常好处包括:

 

1.更广泛的受众

一个团队对其软件的测试越彻底,它就可以自信地发布更多的设备,确保许多平台上的广大观众能够享受其应用。 这允许公司在程序上获得更多的产品销售,也可能提高这个软件从用户那里获得的正面评价的数量。

 

2.提高稳定性

软件测试中的兼容性测试对于突出稳定性和性能问题至关重要,这些问题在不同的设备上往往会更加明显–特别是如果开发人员只为一个平台设计这个应用程序。 系统兼容性测试向该公司展示了用户(在广泛的设备上)对软件整体性能的期望。

 

3.完善发展

这些测试对开发团队也有重大的长期影响。 例如,移动兼容性测试可以提供关于应用程序开发的有价值的信息,企业在创建额外的程序时可能会考虑到这些信息。 这可能会大大降低未来项目的兼容性测试费用,使他们能够重新利用从这一过程中学到的经验。

 

4.验证其他测试

到目前为止,大多数形式的测试范围有限,没有测试每一种可能的硬件或软件组合–这些测试可以有效地重复检查这些结果。 例如,跨浏览器兼容性测试通过显示用户使用不同浏览器时的结果是相同的,从而验证了预先存在的质量保证阶段。

 

5.降低成本

兼容性测试还可以降低当前程序的成本,帮助团队在应用程序进入公开发布之前发现问题–此时,修复错误的成本会变得更高。 一个团队的测试种类越多(测试覆盖率越高),当错误出现时,消除它们的成本就越低。

 

兼容性测试的挑战

UAT测试与回归测试和其他测试的比较

以下是公司在软件测试中实施兼容性测试时可能面临的常见挑战:

 

1.时间有限

虽然自动化工具和其他解决方案可以通过模拟一系列设备来大大加快兼容性测试,但这个过程仍然必须遵守公司的开发时间表。 这意味着测试团队必须优先考虑最常见的设备和浏览器,以保证他们获得最广泛(和最多)的受众。

 

2.缺少真正的设备

这些检查通常涉及模拟真实设备部件和条件的虚拟机;这比独立获取相关部件和平台要便宜得多(也快得多)。 然而,这可能会影响这些结果的准确性;特别是由于性能往往取决于用户如何操作一个真实的设备。

 

3.难于面向未来

兼容性测试只能与已经存在的平台打交道;这意味着他们不能保证应用程序在未来的Windows和Google Chrome版本上按预期运行。 企业只能在启动后解决这个问题,而这往往是比较昂贵的,而且应用程序可能最终会因此而被淘汰。

 

4.基础设施维护

如果一个团队确实决定在内部检查大量的平台,这可能会导致高昂的基础设施费用。 例如,移动应用程序的兼容性测试,可能涉及到采购一些真实的移动设备。 虽然这比模拟硬件兼容性测试更准确,但它是昂贵的,通常涉及定期维护。

 

5.高数量的组合

兼容性测试考虑了许多相互交叉的因素,如操作系统、浏览器、硬件、固件,甚至屏幕分辨率。 即使测试团队有大量的时间,实际上也不可能满足每一种可能性。 配置和兼容性测试必须再次优先考虑最可能的设备组合。

 

兼容性测试的特点

阿尔法测试--它是什么,类型,过程,与贝塔测试,工具及更多!

兼容性测试的主要特点包括:

 

1.彻底

这些检查必须能够隔离设备之间可能出现的任何兼容性问题–否则团队可能最终发布一个有问题的程序。 例如,这些检查必须确保应用程序的每一个功能都能按预期呈现,无论用户的屏幕分辨率如何。

 

2.扩张性

测试应该保持深度和广度的平衡,帮助团队调查许多设备配置的一些问题。 跨浏览器兼容性测试着眼于广泛的操作系统和浏览器组合,确保高覆盖率–有时是在自动解决方案的帮助下。

 

3.双向的

这个过程包括向后和向前的兼容性测试;前者允许团队看到他们的应用程序将如何在旧硬件上运行。 后者使团队能够接触到最先进的平台,帮助他们保证成功的长期表现,即使他们的未来保护能力相当有限。

 

4.可重复的

这些检查所发现的问题必须便于其他测试人员和部门重复进行–表明它们反映了用户可能会遇到的错误。 如果网站兼容性测试表明特定的功能在某个浏览器上无法运行,可重复性有助于开发人员解决这个问题。

 

兼容性测试的类型

网络应用程序自动化测试

兼容性测试的主要类型如下:

 

1.向后兼容测试

向后兼容性测试包括使用旧版本的现今硬件检查应用程序–这一点至关重要,因为将这些检查限制在现代设备上可能会大大限制用户的数量。 许多人仍然在使用旧的操作系统,例如Windows 8。

 

2.前向兼容性测试

前瞻性兼容性测试是类似的,但它着眼于现代或即将到来的技术,以查看应用程序是否有可能在进步和更新的情况下保持工作多年。 例如,如果没有这些测试,该软件甚至可能在下一次浏览器更新时停止运作。

 

3.浏览器兼容性测试

网站浏览器兼容性测试确保一个网络应用程序或网站可以在各种浏览器上运行;这一点至关重要,因为它们使用不同的布局引擎。 质量保证团队甚至会测试跨浏览器的兼容性–这意味着他们会检查每个浏览器是否能在不同的操作系统上处理应用程序。

 

4.移动兼容性测试

测试移动应用程序是一个类似于检查桌面和Web应用程序的过程,特别是手机的操作系统是另一个关键考虑因素。例如,安卓iOS应用程序有完全不同的格式,需要一个完全独立的开发和测试过程来适应这两者。

 

5.硬件兼容性测试

这些检查着眼于组成机器的具体部件,以及它们可能对程序产生的影响;这对几乎所有类型的设备都至关重要。 例如,一台计算机的显卡可能无法成功渲染网络应用程序的界面

 

6.设备兼容性测试

一些应用程序通过蓝牙、宽带或有线连接与外部设备连接。 例如,一个应用程序可能需要与一台打印机连接。 这些测试的目的是确保程序与平台自身的连接和它可以访问的任何设备进行互动。

IS YOUR COMPANY IN NEED OF

ENTERPRISE LEVEL

TASK-AGNOSTIC SOFTWARE AUTOMATION?

 

7.网络兼容性测试

如果一个应用程序需要网络功能来运行–例如通过公司的服务器与在线数据库连接–这就需要大量的兼容性检查。 这确保程序能够在Wi-Fi、4G或3G网络连接下以合适的速度运行。

 

我们在兼容性测试中测试什么?

澄清软件测试自动化中的一些困惑

兼容性测试人员通常检查以下内容:

 

1.业绩

兼容性测试的主要目的之一是确保稳定性,因为应用程序的某些方面可能与普通平台完全不兼容。 通过查看这个程序的整体响应性,测试团队确保在某些设备上没有严重的崩溃。

 

2.功能性

兼容性测试还检查一个应用程序的一般特征和功能,以确保软件能够提供正确的结果。 例如,一个客户关系管理系统可能无法为使用过时操作系统的用户提供销售数据或一般分析。

 

3.图形

由于一些原因,一些浏览器或设备可能难以呈现某些图形元素,而兼容性检查可以帮助解决这个问题。 一个程序可能只能在特定的屏幕分辨率下运行,除非开发者改变程序显示内容的方式。

 

4.连接性

兼容性测试还着眼于该程序如何具体地与用户的设备和它自己的数据库整合,使其能够检测到打印机等设备。 例如,这些检查可能显示,该应用程序无法在3G网络上与自己的数据库连接。

 

5.多样性

这些检查确保该公司的应用程序具有足够的通用性,可以通过向后和向前的兼容性测试在同一操作系统的新旧版本上运行。 这确保了如果用户的软件已经过期几年,他们不会被锁定在该计划之外。

 

兼容性测试的产出类型

兼容性测试的三个主要产出是:

 

1.测试结果

这些检查最常见的输出是结果本身,可以有多种形式。 例如,浏览器兼容性测试可能会发现,一个网络应用在微软Edge上会导致内存泄漏,而同一应用在基于Chrome的浏览器上却没有负面影响。 另外,该应用程序可以完全按照团队的期望在相关平台上运行。

 

2.测试日志

测试结果还表现为应用程序自身的日志形式,通过错误信息强调任何发现的软件问题。 这些日志甚至可以确定导致这一错误的程序的具体部分。 特别是对于兼容性测试,测试人员必须熟悉这些日志如何在不同的平台上表现和呈现这些问题。

 

3.测试案例

兼容性测试案例规定了团队将运行哪些测试,并为他们提供一个空间,以简单的格式记录结果。 测试人员应利用他们对软件的了解,结合测试结果和日志,来确定问题的原因。 他们提供的信息越多,开发人员就能越快地开始修复错误。

检测到的缺陷类型

通过兼容性测试

api测试和自动化

以下是兼容性测试可以识别的最常见的错误:

 

1.布局缩放

网站兼容性测试可以显示构成网络应用程序的元素,甚至是网页,是否能适应用户的设备,特别是他们屏幕的分辨率和尺寸。 因此,一些图形在特定的浏览器上可能难以看到。

 

2.软件崩溃

兼容性测试使我们更容易看到一个应用程序是否能够在某些平台上运行。 例如,一个游戏开发商可以通过检查哪些设备在测试人员启动时因内存和处理器速度不足而崩溃,从而发现他们产品的最低系统要求。

 

3.HTML/CSS验证问题

不同的浏览器和设备以不同的方式读取代码–有些会自动纠正简单的编码错误,例如没有正确关闭HTML标签。 浏览器兼容性测试可能会发现无效的CSS实例,从而阻止应用程序生成其内容,甚至是基本功能。

 

4.视频播放错误

许多现代视频播放器利用HTML5进行在线视频流,这有可能成为公司网络应用的一个关键部分。 然而,检查网站浏览器兼容性的团队可能会发现,他们的应用程序的视频功能与过时的浏览器不兼容。

 

5.文件安全

软件工程中的兼容性测试也可以发现文件安全方面的问题以及不同设备之间的差异。 例如,较新版本的Windows具有更强大的输入/输出安全性。 这可能导致应用程序(如杀毒软件)难以访问设备的文件。

 

兼容性测试过程

什么是软件测试自动化

兼容性测试的通常步骤是:

 

1.编制一个测试计划

一个全面的测试计划对兼容性测试至关重要;质量保证团队在检查过程中可以根据需要参考这个计划。 例如,这详细说明了他们将测试的设备和通过或失败的标准;他们还必须确定他们是否将使用机器人流程自动化

 

2.配置测试案例

测试案例也同样重要,因为它们阐述了团队运行的具体兼容性检查和他们工作的具体设备。 这也包含了测试人员将采取的确切步骤,并有足够的空间让他们记录结果和任何有助于开发人员执行兼容性的信息。

 

3.建立测试环境

一个不受外界影响的隔离和独立的测试环境是必要的,以确保准确的测试,也让质量保证团队确定他们发现的问题来自哪里。 在此基础上,测试人员可以在不影响 “真实 “版本的情况下对应用程序进行检查。

 

4.执行测试

随着测试案例和环境的充分准备,团队可以开始进行兼容性测试–即使有自动化的解决方案,他们的时间也是有限的。 测试人员需要优先考虑最常见的操作系统和设备配置,以考虑到这一点,并确保广泛的测试覆盖,尽管有这些限制。

 

5.复试

一旦测试完成,开发人员收到测试案例,他们将以提高兼容性的方式修改应用程序,尽管这可能不适合所有设备。 然后,测试人员重新检查应用程序,核实他们之前发现的问题不再存在,并且没有新的重大错误。

 

常见的兼容性测试指标

建立卓越测试中心 (TCoE) 的优势

下面是一些用于兼容性测试的常用指标:

 

1.带宽

网络兼容性测试衡量应用程序如何与各种网络打交道,包括宽带和移动数据网络。 例如,程序履行其通常职责和连接到公司数据库所需的最低带宽对于普通3G连接来说可能太高。

 

2.CPU使用率

性能问题的一种表现方式是CPU使用率过高–这可能意味着设备根本不符合程序的最低要求。 CPU问题也可能影响应用程序的响应时间,限制其功能,并造成足够的滞后,使用户失去兴趣。

 

3.系统易用性量表

系统可用性量表是衡量程序主观细节的一种常见方式,包括关于一个应用程序可用性的十个基本问题。 由此产生的SUS得分满分为100分,由于图形错误,各平台之间可能会有差异。

 

4.缺陷总数

这个指标在大多数测试类型中是一个常量,让测试人员了解程序的当前健康状况。 团队也可以在不同的平台之间比较缺陷总数。 通过这样做,测试人员可以突出那些由于不兼容而产生的错误。

 

5.SUPRQ得分

与应用程序的SUS得分类似,标准化用户体验百分位数问卷是测试人员对应用程序的几个关键因素进行评分的一种方式,包括可用性和外观。 这有助于他们识别客户在某些设备上使用应用程序时可能遇到的困难。

 

实施兼容性测试的7个错误和陷阱

挑战负载测试

以下是进行兼容性测试时要避免的七个重大错误:

 

1.缺少真正的设备

虽然不可能在所有可能的设备组合上进行测试,但测试团队仍然可以从使用尽可能多的真实设备中受益。 各种平台通过云解决方案提供 “真实 “的设备,以促进跨浏览器的兼容性测试,其方式可以反映原生性能。

 

2.避免使用旧设备

许多用户仍然在旧版本的Windows或iOS上访问他们的应用程序;完全专注于流行设备和操作系统的新版本可能会限制产品的影响力。 如果团队不把他们的测试扩大到 “过时 “的设备,他们的大量受众可能很难使用这个程序。

 

3.时间管理不善

通常有大量的设备和配置需要进行兼容性测试,这意味着团队必须管理他们的时间,尽可能多地检查这些设备。 这一点很重要,因为测试通常在开发接近尾声时仍在进行;管理不善会大量限制检查的数量。

 

4.时间安排不当

同样重要的是,团队要确保他们在程序开发的合理阶段进行这些测试,最好是在alpha测试和大多数形式的功能测试之后。 这使我们更容易看到一个问题是一般的缺陷,还是针对团队正在查看的设备的具体问题。

 

5.没有考虑到屏幕分辨率

屏幕分辨率对兼容性的影响比许多测试团队所认识到的要大得多–尤其是这是可定制的;并影响到设备如何显示图形元素。 即使兼容性测试的最后期限不断逼近,测试团队仍然要努力在他们的战略中适应这一点,这一点至关重要。

 

缺少专业知识

测试人员需要高度熟练地检查网站、浏览器和软件的兼容性,以及这些测试可能采取的许多其他形式。 如果测试负责人指定他们的一个团队成员进行兼容性检查,而他们没有足够的经验,这可能会减慢测试速度并限制其准确性。

 

6.没有事先讨论

由于兼容性测试通常很耗时(而且可能需要大量的设备),团队必须在质量保证阶段的早期充分确定其检查范围。 例如,在检查开始之前,他们必须清楚地了解他们打算测试哪些具体的设备或配置。

 

兼容性测试的最佳实践

软件测试清单

确保高质量兼容性测试的最佳方法包括:

 

1.在整个开发过程中进行测试

随着软件从一个星期到另一个星期发生重大变化,这可能会影响程序与预期设备的兼容程度。 团队必须反复进行软件和跨浏览器的兼容性测试,以确保应用程序在发展变化后仍能在这些平台上运行良好。

 

2.使用真实的设备

一些兼容性测试工具提供对 “真实 “模拟设备的访问,这些设备能够与该平台的用户体验密切相关。 这可以让你确保在更多设备上的兼容性,同时保持某些自动化解决方案所不具备的高度准确性。

 

3.确定测试的优先次序

由于进行这些检查的时间有限,兼容性测试人员可能需要优先考虑最常见的设备、浏览器和操作系统。 同样,测试团队应该首先检查软件的最关键功能,以保证在这些设备上的基本功能。

 

IS YOUR COMPANY IN NEED OF

ENTERPRISE LEVEL

TASK-AGNOSTIC SOFTWARE AUTOMATION?

4.融入敏捷技术

一些公司选择采用基于冲刺的方法进行兼容性测试,使他们能够轻松达到测试的里程碑–例如检查特定数量的设备。敏捷鼓励跨部门的沟通,同时也提供了一个固定的测试结构,可以保证持续、快速的改进。

 

5.限制测试范围

质量保证团队必须知道何时结束他们的测试,甚至接受不兼容的实例。 在这种情况下,开发商可能不会改变软件,而是可以改变最低要求,如果这很难通过错误修复来规避。

 

兼容性测试案例和场景的例子

什么是单元测试?

兼容性测试案例建立了测试团队的输入、测试策略和预期结果;后者与实际结果进行比较。 由于检查涉及许多设备和配置,这往往是一个广泛的过程。

 

这些案件通常包括:

– 测试网络应用程序的HTML显示正常。
– 检查该软件的JavaScript代码是否可用。
– 看看该应用程序是否在不同的分辨率下工作。
– 测试该程序可以访问文件目录。
– 确保该应用程序连接到所有可行的网络。

 

下面是软件测试中不同程序的兼容性测试的具体例子:

 

1.社交网络应用

社交网络通常采取浏览器上的网络应用和相应设备的移动应用的形式;这两种类型都需要同样彻底的测试。 例如,这个移动应用程序必须至少在iOS和Android设备上完全运行–团队要检查每个操作系统下的新旧设备。 例如,如果一个特定型号的iPhone不能渲染GIF动画文件,团队必须确定是什么原因造成的,以确保用户体验的一致性。

 

2.视频游戏

视频游戏通常提供可定制的图形选项,用户可以根据自己的机器进行更改;这包括控制屏幕的分辨率和确保用户界面的适当缩放。 某些问题可能会出现,这取决于玩家的具体硬件–抗锯齿错误会导致颗粒状的图形。 这可能是由于普通图形卡与该公司的纹理渲染不兼容。 根据具体问题,这甚至可能表现为某些设备启动游戏时的系统崩溃。

 

3.CRM云系统

客户关系管理解决方案大量使用数据库来检索有关其交易、供应商和其他重要业务方面的信息,主要借助于云存储。 测试人员应该确保这个数据库及其云服务在不同的网络上工作,包括3G和4G,如果用户需要在没有互联网连接的情况下访问它。 该团队还必须检查广泛的操作系统,因为某些故障可能只出现在 Linux设备上,例如。

 

手动或自动的兼容性测试?

用于软件测试的计算机视觉

自动化可能对兼容性测试非常有帮助,让团队检查大量设备的速度远远超过 人工方法。 然而,在有限的浏览器和设备上进行检查时,手动测试可能更合适–例如,一个视频游戏只在两个平台上提供。 软件的可用性通常是兼容性测试中的一个核心因素,通常需要从人类的角度出发,这样可以更好地识别图形渲染的问题。机器人流程自动化可能会对此有所帮助,通过实施软件机器人,可以更容易地模仿人类用户的方式进行兼容性测试。

对于为广泛的设备设计的程序,如移动和网络应用,自动化使团队能够确保更广泛的测试覆盖。 他们甚至可以使用超自动化来智能地外包这些检查,其方式仍能确保人类测试人员检查这些平台的用户特定功能。 手工测试中的兼容性测试对于某些任务来说仍然是强制性的–比如检查用户界面在每台设备上的正确显示。 这意味着最好的方法可能是一种混合策略,它可以通过自动化测试更多的设备,增加它们的速度,同时仍然考虑到可用性的重要性。

 

你需要什么来开始兼容性测试?

什么是负载测试、移动应用测试和临时测试?

兼容性测试的主要先决条件通常包括:

 

1.合格的测试人员

兼容性测试人员通常比其他形式的质量保证有更高的技能要求,这是因为他们检查的设备范围更广,而且经常遇到更多的错误。 这可能包括解决问题、沟通和对细节的关注。 团队领导应该指派有在许多平台上检查同一应用程序经验的测试人员。

 

2.强大的设备模拟

在团队的范围内对每一个物理设备进行采购和测试是很困难的,这使得仿真对于观察各种平台对同一程序的反应是至关重要的。 这个过程很少是完美的,测试人员必须看一下许多仿真器和自动测试工具,看看哪一个能提供最准确的测试。

 

3.明确的测试范围

在检查开始之前,团队应该对他们的范围有一个了解;特别是这可能决定他们的工作节奏。 虽然该计划可能旨在覆盖许多平台,但测试人员应确定一个适当的截止点。 例如,测试Windows 7之前发布的操作系统可能会导致收益递减。

 

4.时间管理

兼容性测试可以在整个质量保证阶段的任何时候进行,但通常被保存在开发的最后阶段–当程序稳定和功能完整时。 然而,测试人员应该在这之前很久就考虑兼容性问题,因为这往往很耗费时间。 提前进行有力的计划有助于团队确保他们有足够的时间进行每一次检查。

兼容性测试

检查清单,技巧和窍门

以下是质量保证团队在颁布兼容性测试时必须牢记的其他提示:

 

1.不要以绝对覆盖为目标

虽然每个测试策略都旨在最大限度地提高测试覆盖率,但他们通常在达到100%之前就停止了,因为收益递减,对极少数用户只有微小的改进。 在兼容性方面,团队应该了解什么时候他们的客户中只有很少的人会使用一个设备,这些检查才是值得的。

 

2.优先考虑跨浏览器组合

跨浏览器兼容性测试包括针对各种操作系统检查每个浏览器。 测试人员必须使用关于其受众的综合分析,以确定两者中最受欢迎的,并以此来指导他们的方法。 他们甚至可以制定一个浏览器兼容性矩阵,确定这些检查的范围和它们的不同配置。

 

3.核实布局

确保一致的体验是兼容性测试的核心,这些检查必须比识别程序的功能是否在不同设备上工作更深入。 团队还应该验证软件的整体布局,包括任何表格的排列,以及程序的CSS和HTML的完整性。

 

4.检查API

应用程序编程接口是浏览器如何读取应用程序的核心组成部分,使其对团队的跨浏览器兼容性测试至关重要。 不同的网络浏览器有自己的API调用,随着时间的推移,它们的更新可能会影响兼容性。 测试人员必须定期检查这些;即使公司对每个程序使用类似的API。

 

5.检查SSL证书

SSL证书提高了浏览器的安全性–对网络流量进行加密,使用户能够从HTTPS协议中受益。 一个网站或网络应用可能有一个与某些浏览器不兼容的证书。 这意味着测试人员应在所有主要平台上验证证书,以确保用户在其网站上感到安全。

 

6.验证视频播放器

显示视频的程序,如流媒体服务或由广告支持的免费手机游戏,应经过测试,以确保这些视频在所有预期设备上显示。 对于许多应用程序,这些检查将包括桌面和移动设备,并可以查看视频的质量、速度和帧率。

 

5个最好的兼容性测试工具和软件

功能测试自动化常见问题解答

测试兼容性的最有效的免费和付费工具包括:

 

1.ZAPTEST免费和企业版

ZAPTEST在其免费版和企业版(付费)中都提供了出色的功能,帮助任何规模(或预算)的公司进行兼容性检查。 选择ZAPTEST企业版的公司甚至可以享受高达10倍于其原始投资的回报。 该解决方案的1SCRIPT功能特别适合兼容性测试人员的需要,允许他们在多个平台上运行完全相同的测试,而无需修改代码来匹配。 添加最先进的RPA功能,不需要额外费用,你就有了一个一站式的任何任务自动化解决方案。

 

2.LambdaTest

LambdaTest使用基于云的方法来提供3000个自动化设备–尽管主要集中在网络浏览器上,这可能会限制这个解决方案对某些程序的有效性。 该平台专门从事持续测试,将质量保证过程与开发更紧密地结合起来。 这个应用程序的检查也让用户设置他们的分辨率,使跨浏览器的兼容性测试更加容易。 这个解决方案提供了一个免费模式,尽管这包括不升级的有限测试和没有真正的设备。

 

3.浏览器栈

与LambdaTest类似,BrowserStack提供了对3000个真实设备的访问;他们的目录还包括浏览器的传统和测试选项。 虽然人们更倾向于升级他们的浏览器,而不是操作系统,但可能仍有许多人在使用旧版本–BrowserStack适应了这一点。 用户还可以进行地理位置测试,看看网站和网络应用在不同国家的外观。 然而,没有免费或免费的选项,而且真实的设备测试可能很慢。

 

4.测试网格

TestGrid允许并行测试,让团队同时检查几个组合,以加快进程。 这个解决方案还能很好地与测试和开发工作流程结合起来–可能会通过形成该部门的关键部分来促进敏捷方法。 然而,TestGrid有时会在连接云设备和浏览器方面遇到困难。 除此之外,该计划在负载测试、文件编制和向公司设置添加新设备方面相当有限。

 

5.浏览a

Browsera主要专注于测试网站,以确保它们在各种设备、浏览器和操作系统上正常显示。 作为一种基于云的方法,质量保证团队不需要在他们的设备上安装这个虚拟测试实验室。 Browsera还可以比较输出结果,以便智能地发现布局问题和JavaScript错误,即使是人类测试人员也可能错过。 然而,Browsera不支持几种常见的浏览器,包括Opera,并且只免费提供基本的测试功能。

 

结论

兼容性测试对于成功的质量保证策略至关重要,它允许团队在各种设备上验证他们的应用程序。 如果不接受这种技术,公司可能不知道他们的软件在推出后才会对大部分的目标受众产生作用。 与发布前的测试相比,这需要花费大量的时间和金钱,像ZAPTEST这样的应用程序可以进一步简化这一过程。 有了1SCRIPT和许多其他免费的功能,如并行测试,选择ZAPTEST作为你的测试工具可以改变任何项目,同时让团队对他们的应用有完全的信心。

Download post as PDF

Alex Zap Chernyak

Alex Zap Chernyak

Founder and CEO of ZAPTEST, with 20 years of experience in Software Automation for Testing + RPA processes, and application development. Read Alex Zap Chernyak's full executive profile on Forbes.

Get PDF-file of this post