集成测试
集成测试与系统测试是不一样的。
集成测试针对的是模块之间的关系,而系统测试针对的是整个系统的功能。
集成测试需要了解程序的结构,是一种结构化的测试方法,有路径覆盖的含义。
系统测试不需要了解程序的结构,是一种黑盒的测试方法,是功能覆盖的意义。
这里感觉有个矛盾,集成测试不是大都采用黑盒测试吗,那又怎么了解程序的结构。
我的想法是,集成测试需要了解程序模块之间的结构关系,但是不需要了解更内部的细节。
所以相对程序模块而言,算是黑盒测试,但相对整个系统来说,应该更像白盒测试。
但总的来说,这个争论并不重要,知道原理才是最重要的。
集成测试是由软件开发人员完成的;而系统测试往往是需要用户的参与。
集成测试
集成测试的方法:
基于调用图的集成
从模块之间调用关系的角度,可以得到程序的调用图
图示:
基于路径的集成
一个概念:MM-路径
源节点,汇几点。
模块执行路径是以源节点开始,以汇节点结束的一系列语句,中间没有插入汇节点。
消息:
是一种程序设计语言机制,通过它,一个单元将控制转移给另一个单元。
MM-路径是穿插出现模块执行路径和消息的序列。
集成测试策略比较:
注意:双向箭头表示两条边。(这个公式和DD路径圈数是一样的,因为本来就是有向图的计算公式)
系统测试:
好吧,,这里又声明集成测试是白盒测试了,ok,我觉得这个是对的。(结构测试里面曾经提到集成测试是黑盒测试)
我们讨论系统级线索,进行系统测试。
原子系统功能ASF:
需求规格说明的基本概念
数据,操作,设备,事件,线索。
线索测试的结构策略:
基于用例的线索
基于规格说明系统测试的覆盖率:
基于事件的线索测试
基于端口的线索测试
基于数据的线索测试