域测试是一个测试过程,其中测试软件以确保它不接受无效或超出范围的值。输出针对最少数量的输入进行测试,以查看系统是否接受所需范围内的输入。白盒测试是领域测试的一个完美例子。
在这个过程中,测试工程师测试内部结构、编码和软件设计,确保它与输入输出流相匹配。它还决定了软件的设计、可用性和整体安全性。由于代码对测试人员是可见的,因此白盒测试也称为透明盒、透明盒、玻璃盒和基于代码的测试。这是因为白盒测试允许测试人员深入应用程序的外壳并查看其内部结构。
白盒测试和黑盒测试都属于软件测试。不同之处在于,在黑匣子中,软件是根据其外部和最终用户的角度进行测试的。但是,在白盒中,进行了测试以分析产品的内部结构。
特定的边界定义了每个域。在测试期间,测试人员会分析这些边界附近的每个点。每个测试过程都从一个问题开始,领域测试的目的就是为这些问题找到解决方案。
为测试过程选择哪些域?
应该为测试选择哪些值?
你如何将值分组到类中?
你如何得到结果?
假设有一群学生在大厅里。根据他们的年龄和性别输入,他们被分配了一系列任务。在这里,您可以将大厅视为测试,将年龄组视为具有多种可能场景的边界值。
任务通过以下方式分配给学生 -
十岁以下的学生被要求画画。
男孩 10 >= 15 被要求参加比赛
女孩 10 >= 15 被要求参加一项运动
15岁以上的男孩被要求跳舞
要求 15 岁以上的女孩唱歌
Reaming > 15 名学生被要求做报告
有了上述算法后,测试人员需要将值分组到类中。您可以将学生分为年龄组,然后设置边界值,例如最高和最低年龄值。
您可以测试任何包含输入和输出功能的域。首先,您需要输入输入值并验证输出。
要将值分组到类中,您需要将值划分为子集。
您可以通过两种方式对值进行分区 -
在此过程中,您必须将一组测试条件分组或设置为系统对它们进行等效处理的方式。简而言之,系统应该将这些分区视为相同。
示例
变量 | 有效类等价类 | 无效的类等价类 | 边界和特殊情况 |
---|---|---|---|
X | 0-20 | 0 | |
20 | |||
<0 | -1 | ||
>20 | 21 |
说明- 如果一个字段接受 0-20 之间的范围,那么它不应该接受无效条目和像 -1 和 21 这样的边界条目。
该字段应仅接受值 0、20 以及它们之间的任何数字。
边界测试分析或 BVA 是测试分区之间边界的过程。在此过程中,您必须测试来自分区的有效和无效输入值。
示例- 假设您通过在线平台订购三明治,并要求您输入您打算订购的三明治数量。现在,一个客户最多只能订购 10 个三明治,这是一项规定。
因此,当您输入值 1 到 10 时,它被认为是有效的。将显示一条成功消息。
如果您选择 11 到 99,它将被视为无效,从而导致错误消息。
您需要边界值来测试类的值。
示例源自前一个案例。
测试条件 -
三明治字段中的数字 > 10 无效。
数字 > 1 被视为无效。
数字 1 到 10 是有效的。
三位数无效。
输出结果是通过领域知识确定的。
预先分析设置界限时可能出现的问题
准备处理每个案例的策略
进行错误测试的检查点
使用一个测试点来评估相邻域
检查不必要的测试点
运行测试
检查边界错误
验证每个边界都没有缺陷
领域知识是一组技能,表示您对特定领域有很好的理解,并且熟悉该领域的所有已知术语。除了准确性之外,它还有助于通过缩短开发时间来缩短交付周期。
对于进行领域测试的专家来说,至少拥有基本的领域知识是非常重要的。
领域知识至关重要,因为每个行业或领域都是独一无二的,并且有特定的要求。
零售- 在零售领域,工作流程在不同级别运行。因此,期待在零售中运行域测试的测试工程师必须了解仓库管理、店内解决方案等方面的工作原理。
网上银行- 在线支持由几个关键的互联网相关活动组成,如登录、汇款、账单支付等,这与零售有很大不同。
医疗保健- 处理医疗保健领域非常重要,因为它对某人的生命构成巨大风险。此外,它还包括许多琐碎但耗时的任务,如患者进入、健康历史、处方、设置和修改时间表、保险等。
如您所见,每个域都有其独特性和挑战。因此,如果没有特定领域的领域知识,测试人员就无法进行领域测试。