什么是软件测试技术?
软件测试技术可以帮助设计更好的测试用例。手册可以识别其他情况下难以识别的测试条件。
在本教程中,将学习5种重要的软件测试技术:
- 边值分析(BVA)
- 等价类划分
- 基于决策表的测试。
- 状态转换
- 错误假设
边值分析(BVA)
边界值分析基于分区之间边界的测试。它包括最大值、最小值、内外边界、典型值和误差值。
通常可以看到,大量错误发生在定义的输入值的边界而不是中心。它也称为BVA,给出了一组测试用例的选择,这些测试用例使用了限定值。
黑盒测试技术是对等价划分的补充。这种软件测试技术基于原则:如果系统对这些特定值工作良好,那么它对两个边界值之间的所有值也适用。
边值分析准则
- 如果输入条件被限制在值x和y之间,那么测试用例应该使用值x和y以及高于和低于x和y的值来设计。
- 如果输入条件是大量的值,则应该开发需要执行最小和最大值的测试用例。在这里,也会测试最小值和最大值之上和之下的值。
- 将准则1和准则2应用于输出条件。它会给出一个输出,反映它还会测试低于或高于该值的值。
示例:
Input condition is valid between 1 to 10
Boundary values 0,1,2 and 9,10,11
等价类划分
等价的类分区允许将一组测试条件划分为一个应该被视为相同的分区。这种软件测试方法将程序的输入域划分为数据类,测试用例应该从这些数据类中设计出来。
此技术背后的概念是每个类的代表值的测试用例等于同一类的任何其他值的测试。它允许识别有效和无效的等价类。
示例:
输入条件在以下范围内有效
1 to 10 and 20 to 30
因此,有五个等价类
--- to 0 (invalid)
1 to 10 (valid)
11 to 19 (invalid)
20 to 30 (valid)
31 to --- (invalid)
可以从每个类中选择值,即
-2, 3, 15, 25, 45
基于决策表的测试
决策表也称为因果表。此软件测试技术用于函数,例如,如果用户输入了所有必填字段,则应启用提交按钮。
第一个任务是确定输出依赖于输入组合的功能。如果有较大的输入组合集,则将其划分为有助于管理决策表的较小子集。
对于每个函数,需要创建一个表,并列出输入及其各自输出的所有类型的组合。这有助于识别测试人员忽略的条件。
以下是创建决策表的步骤:
- 在行中填输入
- 在该列中输入所有规则
- 用不同的输入组合填充表
- 在最后一行,根据输入组合记下输出
示例:仅当最终用户输入所有输入时,联系人表单中的提交按钮才会启用。
状态转换
在状态转换技术中,输入条件的改变会改变被测应用程序(AUT)的状态。在状态转换技术中,测试团队为评估系统行为提供正输入测试值和负输入测试值。
状态转换指南:
- 当测试团队针对一组有限的输入值测试应用程序时,应该使用状态转换。
- 当测试团队想要测试被测应用程序中发生的一系列事件时,应该使用该技术。
示例:
在下面的示例中,如果用户在前三次尝试中的任何一次输入有效密码,则该用户将能够成功登录。当用户输入密码错误达到3次,操作已完成,帐户将被阻止登录。
状态转移图
在此图表中,当用户提供正确的PIN号码时,用户将进入授权状态。下表基于上图创建-
状态转换表
操作 | 正确的PIN | PIN不正确 |
---|---|---|
S1) 启动 | S5 | S2 |
S2) 第一次尝试 | S5 | S3 |
S3) 第二次尝试 | S5 | S4 |
S4) 第三次尝试 | S5 | S6 |
S5) 授予访问权限 | – | – |
s6) 账户被封 | – | – |
在上面给出的表中,当用户输入正确的PIN时,状态将转换为已授予访问权限。如果他也这么做3次时间,将达到帐户被阻状态。
错误猜测
错误猜测是一种基于对代码中可能出现的错误进行猜测的软件测试技术。这项技术在很大程度上是基于经验的,因此,测试分析人员必须是熟练和有经验的,才能更好地猜测错误。
该技术统计可能的错误或容易出错的情况的列表。要基于这种软件测试技术设计测试用例,分析人员可以使用过去的经验来识别条件。
错误猜测指南:
- 应该使用以前测试类似程序的经验
- 对被测系统的理解
- 典型错误知识
- 以前容易出错的地方
- 评估历史数据
结论
- 软件测试技术允许设计更好的案例。有五种主要使用的技术。
- 边界值
- 等价类
- 决策表。
- 在状态转换技术中,输入条件的更改会更改被测应用程序(AUT)的状态
- 错误猜测是一种基于对代码中可能出现的错误进行猜测的测试技术。