面向对象软件测试理论与技术的研究
【摘要】:
进入90年代,面向对象范型(OO范型)受到了研究界和工业界的普遍重视并
获得广泛应用。OO为软件测试提出了很多新问题,但当前对OO软件测试的研究
还很薄弱。能否找到有效的适用于OO软件的测试技术,很大程度上决定着OO能
否真正走向成功。
本研究工作的第一部分提出了一种测试类的测试用例生成方法。测试一个类时,
既要测试类中的单个方法,又要测试方法之间的各种可能的交互。OO范型强调的
可重用性对测试工作提出了更高的要求,为了保证该类是可重用的,一个类必须在
各种使用上下文中接受测试。文献[23]中提出了称为方法序列规范(Method Sequence
Specification, MtSS)的OO软件规范方法,一个类的MtSS明确定义调用该类中方
法的合法顺序。作者发现MtSS能直接支持测试用例的生成,提出了基于MtSS的测
试用例生成方法。为了从数量极大的可用测试用例中选取有效的测试用例,本文提
出了基于划分的测试用例生成策略,并给出了3种有效的划分准则。对象的健壮性
是整个OO系统可靠性的前提和重要保证。为此,本文还提出了用于检验对象健壮
性的测试用例的生成技术。
本研究工作的第二部分集中于类间集成测试(Inter-Class Integration Testing)的
测试充分性和测试用例重用的研究。类间集成测试是OO软件测试的重要组成部分,
但同时也是研究的薄弱环节。这一部分,作者提出了契约测试的概念。契约测试的
目的是测试具有Client-Supplier关系的两个类(对象)能否正确交互。继承和多态
对测试有着深刻影响。一方面,继承和多态造成了子类型替换,使测试的工作量成
倍增加;但另一方面,继承又为测试过程中重用已有的测试资源(包括测试用例和
测试结果)创造了条件。第五章我们深入研究了在继承和多态的影响下,进行契约
测试时哪些测试是必要的,哪些测试是可省去的,并详细讨论了如何利用继承关系
重用已有的测试用例。
找到能使测试工作量最小的测试顺序是OO软件集成测试的一个重要问题。OO
程序可看作是一个类的集合,同时类与类之间又有着各种复杂关系。OO程序组织
结构的特点,决定了传统的基于层次结构的集成测试策略已不适用。测试OO程序
时,为类中的方法构造测试承接程序(Test Stub)变得更加困难,选择不同的测试
顺序将决定着测试工作量的大小。鉴于此,本文的第三部分集中于研究OO程序的
测试顺序和集成测试策略。Kung等人在文献[26]中已提出了一种测试顺序分配算法。
我们发现,该算法存在一个严重缺陷:当类之间的关联关系变化时,所得的新的测
试顺序会发生大的调整,很可能要求构造新的测试承接程序。考虑到关联关系本来
就不如继承和聚集关系稳定,对于以递增和反复为特征的OO软件开发过程,关联
n 西安电子科技大学博士论文:面向对象软件测试理论与技术的研究
边的变化更会频繁发生,因此采用Kng的算法仍会造成较大的测试工作量。为了
克服这一缺陷,我们给出一个新的测试顺序分配算法,以及以此算法为基础的类间
集成测试策略。我们的算法用类之间的继承和聚集关系确定该类的主级号,用关联
关系确定类的次级号。这样,当关联关系变化时,产生的新的测试顺序只会发生小
范围的调整,因而有利于重用己有的测试承接程序,从而降低测试的工作量。
|
|
|
|
1 |
张雪萍,张猛,庄雷;面向对象软件测试探讨[J];信息工程大学学报;2002年03期 |
2 |
亢勇,陈自力,李鹏,路平;面向对象的软件测试[J];测试技术学报;1999年02期 |
3 |
路小娟,张桂琴,顾桂梅;软件测试在面向对象技术开发中的应用设计[J];甘肃科技;2004年08期 |
4 |
刘伟达,孟建良,庞春江,蔡媛媛;基于面向对象的软件测试工具模型及其研究[J];现代计算机;2004年08期 |
5 |
张国立,马建伟,周春雷;基于面向对象的软件测试工具模型及其研究[J];河北工程技术职业学院学报;2004年04期 |
6 |
谢声鹏;面向对象软件测试探讨[J];渝西学院学报(自然科学版);2003年03期 |
7 |
郑剑;江建慧;;Web服务软件测试技术进展[J];计算机应用与软件;2009年10期 |
8 |
时冬妮;;软件测试流程研究[J];硅谷;2009年02期 |
9 |
刘伟;谭振江;;针对面向对象软件的测试[J];吉林师范大学学报(自然科学版);2009年04期 |
10 |
罗雪春, 王立福;面向对象的软件测试环境体系设计[J];辽宁大学学报(自然科学版);1995年03期 |
11 |
刘金艳,尹治本,蔺娟茹;面向对象软件测试的研究[J];微机发展;2003年06期 |
12 |
许健才;;从纵横两个方向谈软件测试的生命周期[J];大众科技;2011年02期 |
13 |
林海;欧钢;向为;;软件测试策略综述[J];软件导刊;2008年10期 |
14 |
胡煜,李远杰,曾明,朱利;基于公理系统的面向对象自动测试研究[J];微电子学与计算机;2005年07期 |
15 |
秦春燕;姚竹亭;;自动装填控制系统的软件测试[J];兵工自动化;2007年09期 |
16 |
沈剑乐;王林章;李宣东;郑国梁;;一个基于UML顺序图的场景测试用例生成方法[J];计算机科学;2004年08期 |
17 |
金凌紫;面向对象软件测试技术进展[J];计算机研究与发展;1998年01期 |
18 |
王铁滨;;基于OSD的动态测试模型及其应用[J];通化师范学院学报;2007年02期 |
19 |
姬莹,罗钧旻,钟联炯;面向对象软件测试主要问题的探讨[J];西安工业学院学报;2001年01期 |
20 |
梁利亭;;基于UML的软件测试的研究与应用[J];太原城市职业技术学院学报;2011年03期 |
|