什么是软件测试?
前面的章节介绍了软件测试及其重要性。现在我们来深入了解这个主题,先回顾一下定义。
软件测试根据客户需求评估软件功能。它大致分为两类。
- 动态测试。通过运行程序进行测试。
- 静态测试。通过检查代码和相关文档进行测试。
黑盒测试关注软件能做什么,不检查内部实现。它可用于单元、集成、系统和验收等各个测试层级。
黑盒测试
黑盒测试人员关注软件应该做什么。测试用例来自规格说明和需求,无需参考程序的内部逻辑。测试人员提供有效和无效的输入,然后检查产生的输出。
白盒测试白盒测试检查源代码,包括程序的内部逻辑、实现和行为。测试用例检查软件的内部运行方式。这种方法可用于单元、集成和系统测试。它可以发现其他方法难以发现的内部设计错误,但无法识别遗漏的需求或规格说明。
白盒测试
语句覆盖
语句覆盖检查每个代码块中的每条语句是否至少执行一次,并观察执行结果。它也被称为行覆盖或段覆盖。
执行每条语句并不一定会检验每个条件。因此,即使达到完整的语句覆盖,仍可能有些错误未被发现。
判定覆盖判定覆盖也称为分支覆盖,用来测试每个判定的各项结果,包括真和假。分支是判定的一种结果。这种方法的覆盖程度高于单独使用语句覆盖。下面是一些判定语句的例子。
- IF 语句。
- 循环控制语句,例如 do-while。
- 有两个或更多可能结果的 CASE 语句。
判定覆盖会检验代码中的每条分支,因此比单独使用语句覆盖检查得更全面。
条件覆盖条件覆盖测试各个布尔条件分别为真和假的情形。这些条件可能对判定结果产生重要影响。条件覆盖不一定能实现完整的判定覆盖。
判定与条件覆盖判定与条件覆盖结合对判定的测试和对各个逻辑条件的测试。它同时检查判定和条件为真和为假的结果,是一种覆盖较全面的软件测试方法。
多条件覆盖多条件覆盖又称条件组合覆盖,用来检查不同条件组合下的输出。请看下面的例子。
If (x=true OR y=true)
Then
Print (“Hello”)
Else
Print (“Bye”)
这个例子有四种可能的条件组合。
测试用例 1。x=true; y=true
测试用例 2。x=true; y=false
测试用例 3。x=false; y=true
测试用例 4。x=false; y=false
同样,三个布尔条件有八种可能的组合。
我们保证,学完免费在线培训,您就能通过软件测试认证考试!
-
01
在线报名
选择您希望获得的认可认证,完成报名。
-
02
接收访问码
您的专属考试访问码将立即发送到您的电子邮箱。
-
03
准备并参加考试
学习免费培训材料,在线回答 50 道选择题。
-
04
获得终身有效的认证
领取全球有效的证书和可验证的数字徽章。
您的免费优质在线培训
Software Testing Revealed 第二版已为您备好。
我们与来自各主要行业的知名企业领导者、团队负责人、软件测试教练、导师、专家及权威人士共同开发了这套培训。所有访问 International Software Test Institute™ 的人士都可以学习。您可通过 您的免费软件测试书籍 以及 您的免费优质软件测试培训 获取培训资料。这两个栏目都在顶部菜单中。
这些资料是 International Software Test Institute™ 享有版权的知识产权。我们免费向所有人分享,因为公开我们的专业经验能帮助软件测试从业者,并促进这一领域的发展。
认证考试采用选择题。请学习在线培训,掌握通过考试和获得软件测试认证所需的知识。
我们保证,学完免费优质在线培训,您就能通过软件测试认证考试!
