什么是配置测试?示例测试用例
配置测试
配置测试是一种软件测试方法,其中软件应用程序在各种软件和硬件组合下进行测试,以分析功能需求并确定软件应用程序在无错误或缺陷的情况下运行的最佳配置。
如前所述,配置测试是一种软件测试类型,其中被测应用程序必须使用软件和硬件的不同组合进行评估。
配置测试示例
让我们来看一个桌面应用程序的示例,了解其工作原理 -
通常,桌面应用程序是两层或三层结构。在这里,我们将研究一个使用 Asp.Net 构建的三层桌面应用程序,它由客户端、业务逻辑服务器和数据库服务器组成,每个服务器都支持以下列出的平台。
Windows XP、Windows 7、Windows 8 及其他客户端平台
Windows Server 2008 R2、Windows Server 2008 R2 和 Windows Server 2012R2 是服务器平台。
SQL Server 2008、SQL Server 2008R2、SQL Server 2012 及其他数据库
为了验证应用程序是否正常运行并且没有出现故障,测试人员必须使用上述平台和数据库版本的组合来测试客户端、服务器和数据库的组合。
配置测试不仅限于软件,也适用于硬件,因此它也被称为硬件配置测试,其中我们测试各种硬件设备,例如打印机、扫描仪、网络摄像头和其他使被测应用程序能够运行的设备。
Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.
此测试的目的是什么?
如前所述,此测试是一种评估程序、系统或应用程序性能的技术,同时考虑各种系统设置。
进行此测试是为了发现系统或程序平稳运行而没有任何错误、问题或性能故障的最佳配置。借助此测试,可以确定提供所需性能特征的最佳配置。
此测试的第二个主要原因是系统与 SRS 中包含的其他软件或硬件的兼容性(软件需求规范)。
一个具体的例子
假设您的公司使用 C# 创建了一个基于 .NET 框架的桌面应用程序。
并且此应用程序构建在三层体系结构上,包括前端(客户端)、应用程序层(服务器)和数据库层。因此,每一层都将支持某些平台。
假设每一层都支持以下列出的平台 -
客户端 - Microsoft Windows 10、Windows 7、Windows XP 和 Linux。
服务器例如 Ubuntu Server、Windows Server 2016 和 Novell Open Enterprise Server。
数据库例如 Microsoft SQL Server、IBM DB2 和 MySQL。
现在,作为软件测试人员,您必须在上述客户端、服务器和数据库平台的每个组合上测试该应用程序,以确保它在所有这些平台上都能正常工作。
例如,您将测试应用程序如何在 Windows 10 操作系统、Windows Server 2016 数据库和 MySQL 数据库下工作,然后您将测试应用程序如何在 Windows 10 操作系统、Windows Server 2016 数据库和 IBM DB2 数据库下工作。
依此类推,直到您尝试了所有可能的组合。我们的测试不仅限于软件;它还将包括硬件,其中我们将必须检查每种可能的硬件设备组合。因此,此测试也称为硬件配置测试。
配置测试准备
在运行配置测试之前,此测试有一些前提条件必须满足。
以下是要求 -
#1)创建覆盖矩阵
由于存在大量可选的硬件和软件组合,因此有效地测试每个组合都变得非常耗时且实际上是不可能的。
例如,在上述情况下,将共有 3*3*3 或 27 种软件配置。假设我们有 5 个不同的硬盘驱动器和 6 个不同的内存容量。那么计数将增加到 27*5*9 或 810 种配置。如果我们在图片中添加更多元素,这将继续增加。因此,提前计划软件测试工作并确定将支持哪些平台至关重要。
然后,我们需要创建一个覆盖矩阵来存储所有不同的硬件和软件设置。此覆盖矩阵也称为 BCM(基本配置矩阵)。
#2)设置配置优先级
下一步是使用配置矩阵对配置进行优先级排序。
此阶段是必要的,因为测试所有大量的组合是不可能的。因此,根据客户的意见确定了最重要的设置,并且这些设置将首先得到充分测试。
完成前两个阶段后,我们可以开始按重要性顺序测试各种配置。
Microsoft VSTS(Visual Studio Team Services)是一种配置测试工具。
VSTS(Microsoft Visual Studio Team Services)是一种解决方案,可以根据您的测试策略极大地帮助您在多种配置中测试您的程序。
您应该制定一个测试计划,以帮助您选择要运行哪些测试以及在哪些设置上运行。您必须验证环境是否已针对您想要的设置正确设置。获得组合矩阵后,您必须测试该矩阵。
要执行此测试,请遵循以下步骤 -
创建变量并配置配置。您的设置中的一个组件是变量。例如,变量“浏览器”可能有多个值,例如 Chrome、Firefox、IE10 等。
将配置分配给测试计划、测试套件或特定测试用例。
分别在每个设置上运行测试。
记录每个设置的测试结果。
配置测试前提条件
在开始任何项目的配置测试之前,必须满足一些前提条件。
创建一个包含软件和硬件设置的各种组合的矩阵。
对设置进行优先级排序,因为测试所有设置都很困难。
根据其优先级测试每种配置。
配置测试目标
配置测试的目的是确保一切正常。
验证应用程序以查看它是否满足可配置性要求
手动生成故障以帮助检测在测试期间不容易发现的问题(例如:更改系统的区域设置,如时区、语言、日期时间格式等)
确定测试应用程序的最佳设置。
添加或更改硬件资源,例如负载均衡器、增加或减少 RAM 大小、连接各种打印机类型等,以分析系统性能。
根据优先级分析系统效率,确定使用可用资源执行测试的有效性,以获得最佳系统配置。
验证地理位置分散的环境中的系统,以确定其运行状况。
例如,如果服务器位于与客户端不同的位置,则系统应无论系统设置如何都能正常工作。
检查无论设置如何更改,问题有多容易重现。
通过正确记录和保留易于识别的版本来确保应用程序组件的可追溯性。
在整个软件开发生命周期中,确定应用程序组件的可管理性。
配置测试:分步指南
在本部分中,我们将逐步介绍应用于不同类型的配置测试的方法。配置测试分为两类,如下所示。
软件配置测试
硬件配置测试
软件配置测试
软件配置测试是在不同的操作系统、软件升级等情况下对被测应用程序进行测试。软件配置测试需要很长时间,因为安装和卸载过程中所需的许多软件工具需要花费时间。
在虚拟机上测试软件设置是用于执行此操作的方法之一。虚拟机是一个基于软件的环境,模拟物理硬件的行为,为用户提供与物理机器相同的体验。虚拟机用于复制现实世界中的场景。
始终最好在虚拟机上安装应用程序/软件并继续测试,而不是在多台真实计算机上安装和卸载软件,这非常耗时。可以使用多个虚拟计算机来执行此过程,从而使测试人员的工作更容易。
在软件配置测试方面,通常最好尽早开始。
提供了可测试的配置标准。
测试环境现已可用。
测试团队已接受了广泛的配置测试培训。
已发布构建,并且单元测试和集成测试均已通过。
要测试软件配置测试,一个典型的测试策略是在不同的软件配置中运行功能测试套件,以确保被测程序按预期运行,没有任何缺陷或错误。
另一种方法是手动使测试用例失败并检查效率,以确保系统正常运行。
示例
考虑一个必须针对各种浏览器测试兼容性的银行应用程序。如果应用程序托管在满足所有标准的环境中,则测试实验室中的单元和集成测试可能会成功。
但是,如果将相同的程序部署到客户端位置,并且机器缺少应用程序直接或间接依赖的某些软件更新或版本,则应用程序可能会失败。为了避免这种情况,最好在继续测试之前,通过消除部分可重新配置标准来手动使测试失败。
硬件配置测试
硬件配置测试通常在实验室中进行,实验室中存在连接各种硬件的实际机器。
当新的构建可用时,必须将软件安装在连接硬件的所有物理计算机上,并且必须在每个系统上运行测试套件,以确认应用程序正常运行。
在每台计算机上安装软件、连接硬件以及手动执行或自动化上述过程并运行测试套件都需要大量时间。
此外,在执行硬件配置测试时,我们定义了要测试的硬件类型,并且有如此多的不同类型的计算机硬件和外设,几乎不可能运行所有这些硬件。因此,测试人员有责任确定用户最常用的硬件,并根据此优先级进行测试。
总结
配置测试与其他形式的测试一样,应在软件工程中给予同等重视。如果没有配置测试,就不可能评估理想的系统性能,并且软件可能会遇到它旨在运行的兼容性问题。