1.1黑盒测试
①定义
黑盒测试又称功能测试、数据驱动测试或基于规格说明书的测试,是一种从用户观点出发的测试。
等价性划分、边值分析、组合测试、随机测试和误差猜测、场景测试。
②黑盒测试主要测试的错误类型有:
a.不正确或遗漏的功能;
b.接口、界面错误;
c.性能错误;
d.数据结构或外部数据访问错误;
e.初始化或终止条件错误等等。
③优点
a.有针对性地寻找问题,并且定位问题更准确。
b.黑盒测试可以证明产品是否达到用户要求的功能,符合用户的工作要求。
c.黑盒测试与软件如何实现无关,如果实现发生变化,黑盒测试用例仍然可用(可重用性,面向回归测试)
d.测试用例开发可以与软件开发同时进行,可节省软件开发时间,通过软件的用例就可以设计出大部分黑盒测试用例。
e.能重复执行相同的动作,测试工作中最枯燥的部分可交由机器完成。
④缺点
a.需要充分了解待测试软件产品所用到的各项技术,测试人员需要具有较多经验。
b.测试用例数量较大
c.测试用例可能产生很多冗余
d.功能性测试的覆盖范围不可能达到100%
e.在测试过程中很多是手工测试操作
f.测试人员要负责大量文档、报表的编制和整理工作。
⑤常用方法
等价类划分、边界值分析、决策表、因果图、错误推测法。
a.等价类划分:将输入数据划分为不同的等价类,每个等价类代表一种输入情况,只需测试每个类中的一个值,就能覆盖整个类。
b.边界值分析:测试输入数据的边界条件,边界值分析关注输入值的边界,如最小值、最大值、刚超过边界和刚未到边界的值。常用来检测可能的溢出、越界等问题。
c.决策表:列出输入条件和可能的操作,通过组合不同条件来测试每个可能的输出情况,决策表是一种将输入条件与操作组合起来的表格,尤其适用于复杂的逻辑判断场景。
d.错误推测法:基于测试者的经验和直觉,推测可能出现错误的地方,错误推测法没有严格的规则,它依赖于测试者对常见错误的了解,如输入非法字符、空值、极端值等。
2.1白盒测试
①定义
白盒测试是基于软件内部结构的一种测试方法。(针对代码和程序逻辑)。
②白盒测试的目的
发现代码中的隐藏错误(逻辑错误、边界条件、异常处理缺陷),保证每个逻辑分支正确执行。
③常用方法
单元测试、语句覆盖、分支覆盖、路径覆盖、数据流分析。
a.语句覆盖:确保每行代码都被执行。
b.分支覆盖:确保每个条件的 True 和 False 分支都被测试。
c.路径覆盖:测试所有可能的执行路径,验证代码中不同逻辑组合的正确性。
d.数据流覆盖:检查变量在程序中的定义和使用情况,确保数据流的正确性。
3.1考试真题
①在白盒测试中,测试强度最高的是( )
A.语句覆盖
B.分支覆盖
C.判定覆盖
D. 路径覆盖
答案:D
②在黑盒测试中,( )方法最适合描述在多个逻辑条件取值组合所构成的复杂情况下,分别要执行哪些不同的动作。
A.等价类
B.边界类
C.判定表
D.因果图
答案:C