实际上,由于时间和财务限制,对每组测试数据进行详尽的测试是不切实际的,尤其是当存在大量输入组合时。
我们需要一种简单的方法或特定的方法来智能地从测试用例池中选择测试用例,以便涵盖所有测试情况。
为此,我们采用了两种方法:等价划分和边界值分析测试程序。
可以手动或自动完成的软件测试对于无错误程序至关重要。尽管自动化测试可以节省测试时间,但手动测试是评估软件应用程序功能的最常用方法。我们将在这里介绍最重要的手动软件测试方法。
软件测试技术是一组有助于提高任何软件开发项目的整体质量和有效性的实践。它有助于开发更好的测试用例,这些用例是测试人员用来评估被测系统是否满足要求或正常运行的环境或变量的集合。为了提高测试的效率,许多测试方法被用作测试过程的一部分。
黑盒测试设计是一种测试方法,它在不查看底层代码结构、实现细节或软件内部路由知识的情况下检查被测应用程序 (AUT) 的功能。这种测试形式完全基于软件规范和需求。我们只在黑盒测试中测试软件系统的输入和输出,我们不担心程序的内部运作。通过采用这种策略,我们可以节省大量的测试时间并拥有强大的测试用例覆盖率。
经常使用五种类型的测试技术 -
边界值分析 (BVA)
按等价类划分
决策表测试是一种使用表格进行决策的测试。
状态转换
猜错
本文仅深入介绍了边界值分析和等价类划分。最后三种策略将在未来的出版物中讨论。
BVA 是另一种黑盒测试设计技术,用于检测输入域边界(在输入边界测试程序的行为)而不是中心的缺陷。边界值测试背后的主要概念是选择以下输入变量值 -
最小值、略高于最小值、略低于最小值、标称值、略低于最大值、最大值和略高于最大值。即每个范围有两个边界:下边界(范围的开始)和上边界(范围的结束),边界代表每个有效划分的开始和结束。我们应该创建测试用例,将程序的功能置于其极限进行测试,使用刚好在极限之内和之外的值。压力测试和负面测试都包括边界值分析。
什么是边界测试以及它是如何工作的?
什么是等效类分区,它是如何工作的?
示例 1 - 边界值和等价
示例 2 - 边界值和等价
等价和边界分析测试的好处是什么?
在输入数据的各部分之间的极端或边界之间进行测试的技术称为边界测试。
这些极端端点,例如 Start-End、Lower-Upper、Maximum-Minimum、Just Inside-Just Outside 值,称为边界值,使用边界测试来测试它们。
在正常边界值测试中,主要概念是选择以下输入变量值 -
最低限度
略高于最低限度
最少的钱
刚好低于上限
最大值
等价类分区在边界测试中很有用。
在等价类分区之后,遵循边界测试。
等效分区,也称为等效类分区,是一种黑盒测试方法,可用于软件开发的所有阶段,包括单元、集成和系统测试。由于测试用例的数量最少,这种方法将输入数据单元划分为可用于生成测试用例的可比较的部分,从而减少了测试所需的时间量。
它将程序输入数据拆分为几种等效的数据类型。
当输入字段中有范围时,您可以使用此策略。
考虑订购比萨文本框的行为。范围从 1 到 10 的比萨饼值被认为是合法的。显示消息“成功”。
虽然值 11 到 99 被视为订购无效,但会显示一条错误通知,指出“只能订购 10 个比萨”。
测试情况如下 -
在 Order Pizza 表单中提交的任何大于 10(假设为 11)的数字都被视为无效。
任何小于 1 且为 0 或以下的数字均视为无效。
数字 1 到 10 被认为是可接受的。
任何三位数字,例如 -100,都无法使用。
我们无法测试所有潜在值,因为这会导致超过 100 个测试用例。为了解决这个问题,我们使用等价划分假设,将票的潜在价值划分为组或集合,如下图所示,其中系统行为是相似的。
等价分区或等价类是分割集。然后,为了测试,我们从每个拆分中只选择一个值。这种方法基于这样的想法:如果分区中的一个条件/值通过,则所有其他条件/值也会通过。同样,如果分区中的一个条件失败,则该分区的其他条件也将失败。
边界值分析 (BVA)是一种用于确定等价分区之间边界的技术
在我们之前的等效分区示例中,您将检查诸如 0、1、10、11 等分区的值,而不是为每个分区测试一个值。如您所见,您在有效和无效限制下测试值。范围检查是边界值分析的另一个名称。
边界值分析 (BVA) 和等价划分密切相关,可以在所有级别的测试中联合使用。
下面的密码框允许最少 6 个字符和最多 10 个字符。
因此,分区 0-5、6-10、11-14 的结果应该具有可比性。
测试场景# | 测试场景描述 | 预期结果 |
---|---|---|
1 | 在密码区,输入 0 到 5 个字符 | the system should not accept anything else. |
2 | 在密码区填写 6 到 10 个字符 | the system should allow |
3 | 在密码区,输入 11 到 14 个字符 | 系统应该拒绝它 |
可以在此处找到边界值测试用例。
边界值 = 0 - 系统不应允许
1 是边界值 - 需要系统接受。
2 是边界值 - 需要系统接受。
9 是边界值 - 需要系统接受。
10 是边界值 - 需要系统接受。
11是边界值——系统不接受
考虑以下场景:开发人员为仅接受和转移 100 和 5000 之间的数字的金额文本字段创建代码。测试工程师通过在金额文本框中键入 99 并按下转移按钮来仔细检查它。因为边界值已经设置为 100 和 5000,它会显示错误通知,指出 99 是一个不正确的测试用例。由于 99 小于 100,因此文本形式不会转移金额。
以下是有效和无效测试场景的集合。
输入 100,这是最小值。
输入值 101,即最小值加一。
输入数字 4999,这是可能的最大值。
输入值 5000,这是可能的最高值。
输入 99,这是最小值。
输入金额 5001,即最大值加 1。
这种测试用于将大量测试用例分解为更小、更易于管理的部分。
选择不影响测试有效性的测试场景的非常明确的标准。
适用于需要大量计算并具有大量变量/输入的应用程序。
1. Pressman Rule - 如果输入包含一系列数字,请为一个有效值和两个不正确值创建测试用例。
如果输入包含一组值,请为所有合法值集以及两个不正确的值提供测试用例。
考虑以下场景 -
考虑任何在线购物网站,其中每个产品都应由唯一的 ID 和名称标识。用户可以使用产品名称或产品 ID 搜索产品。您可以查看带有产品 ID 的项目列表,并查看其中是否有任何是笔记本电脑(有效值)。
如果输入是布尔值,则为 true 和 false 值创建测试用例。考虑以下示例网页,其中包含用于名字、姓氏和电子邮件地址的文本字段,以及使用布尔输入的性别单选按钮。
如果用户单击任何单选按钮,则应将相关值设置为输入。如果用户选择不同的选项,则必须更改输入值以反映新选择(并且应取消选择先前选择的选项)。
当一个单选按钮选项被选中时,它被认为是 TRUE,当没有被选中时,它被视为 FALSE。此外,不应同时选择两个单选按钮;如果他们这样做,这被认为是一个问题。
2. 实践方法- 将所有有效值的值范围划分为可比较的部分,同时确保测试两个不正确的值。
当实际上很难单独评估大量测试用例时,会执行边界分析测试。所采用的方法包括边界值分析和等价划分测试。
首先,您将一组测试条件分成一个可以在等效分区中检查的分区。
接下来使用边界值分析测试等价划分之间的边界。
适用于需要大量计算并包含反映物理量的变量的应用。