本文是关于精读书籍《软件测试的艺术》的一些学习笔记和分享
本书共有九章包括测试思想(心理,经济),代码检查,测试用例设计,模块测试,更高级别的测试,调试,极限测试和因特尔应用系统的测试。
本文主要介绍了一些介绍了一些模块测试和一些更高级别的测试,并结合《软件测试》这本书对这两方面进行补充。
模块(单元)测试
模块测试的目的是将模块的功能与定义模块的功能过个说明或接口规格进行说明比较。
测试用例的设计方式
模块测试总体上是面向白盒测试的。具体的白盒测试方法已经在上一章节进行了讨论。在模块测试中主要需要模块的规格说明和模块的源代码。
- 列举出程序中所有的条件和判断
- 在得到数量较少的判断后,选择多重条件覆盖
- 对覆盖原则,设计充足的测试用例
增量(集成)测试及集成的顺序
非增量测试:先独立的测试每一个模块,然后再将这些模块组装成完整的程序
增量测试:将下一步要进行测试的模块组装到测试完成的模块集合中,然后在进行测试
对比:
- 非增量测试所需的工作量量要多一点
- 增量测试可以较早地发现模块中与不匹配接口、不正确假设相关的编程错误。
- 增量测试会更容易一点
- 增量测试会进行的更彻底
- 非增量测试多占用的机器时间更少一点
- 模块测试阶段开始时,如果使用的是非增量测试,就会有更多的机会进行并行操作(所有模块可以同时进行)
对比之后,基于计算机行业当前的趋势(硬件成本已经降低而且势必持续下去,硬件成功会不断增加,而人力成本和软件错误的的代价在不断增长),所以错误发现得越早,改正它的成本就越低。进而我们可以得到结论,增量测试要更好一点。
驱动模块是用来模拟被测试模块的上一级模块,相当于被测模块的主程序。它接收数据,将相关数据传送给被测模块,启用被测模块,并打印出相应的结果。
桩模块是指模拟被测试的模块所调用的模块,而不是软件产品的组成的部分。
自顶向下测试
自顶向下的测试是从程序的顶部或初始模块开始。自顶向下测试包含两种测