《基于面向对象形式规格说明的测试用例生成技术》由会员分享,可在线阅读,更多相关《基于面向对象形式规格说明的测试用例生成技术(143页珍藏版)》请在金锄头文库上搜索。
1、上海大学工学博士学位论文摘要随着信息技术的发展,软件的规模不断扩大,如何保证和提高软件质量成为软件界最为关心的问题之一。软件测试作为保证软件质量的关键技术之一,能够有效地发现软件中的故障。据统计,在软件开发成本中,软件测试的工作量往往占软件开发总工作量的4 0 以上。对于某些安全关键的软件,其测试费用甚至高达所有其它软件工程阶段费用总和的三到五倍。因而,提高软件测试的有效性和测试效率、降低软件开发成本已成为软件工程师迫切需要解决的任务之一。软件测试的核心问题是测试用例的产生。根据测试用例产生的依据可以将软件测试分为基于程序代码的测试和基于规格说明的测试两大类。基于程序代码的测试是指测试者根据程
2、序的内部结构和与路径相关的数据特性设计测试用例。基于规格说明的测试是指测试者不需了解程序的内部结构,直接根据程序的需求规格说明来确定测试用例,推断测试结果的正确性。这种测试可以验证程序实现是否符合系统需求,从而实现软件测试的目的。同时,由于测试用例的开发是以系统规格说明为依据,测试用例的设计过程可以和程序开发过程同时进行,缩短了软件开发周期,提高了软件开发的效率。形式化的软件规格说明具有精确的符号表示和清晰的语义,能够进行推理和证明,同时也便于工具的处理。因此,用形式化的规格说明作为测试用例的来源将会使得测试用例的自动构造成为可能。但目前基于形式规格说明构造测试用例的研究主要集中在利用黑盒测试
3、准则( 如:范畴划分测试准则,基于状态图的测试准则) 从不同形式的规格说明( 如:z 模式、U M L 状态图) 中构造测试用例。但是对于基于模型的面向对象形式规格说明( 如:O b j e c t Z 、v D M + + 规格说明)应J i f j 这些构造测试用例的技术非常困难。因为,这些基于模型的面向对象规格说明没有提供状态图,也很难将范畴划分测试准则应用到这些规格说明中用于定义输入空间的复杂谓词上。本文提出了一系列用于从基于模型的面向对象形式规格说明推导测试H j 例的力法和技术。这些方法和技术分别探讨了在类测试层次以及类问测试层次上如何从基于模型的形式规格说明构造测试用例。在类测试
4、层次上,本文定义了一个公理化系统对现有的可应用于方法内测试的逻辑覆盖准则迸行评估,为测试人员从这组准则中选择某个准则提供了依据。此外,在这层次的测试过程中,本文还提出了组用于产生测试类的方法问交互的类内部测试准则。这组准则利用方法内测试月j 例来构造类内部测试用例,避免了以往的研究中采用基于状态图的测试准则构造测试J = f j 例时需要的抽取类的状态图的工作,使得机械化地构造类测试川例成为可能。在类问测试层次,本文给出了一系列用于测试类问的多态关系的上海大学工学博士学位论文测试准则,改变了以往对多态关系的测试主要集中于基于程序代码的方法。应用本文提出的这些用于测试类间多态关系的测试准则,测试
5、人员可以从形式规格说明中推导出用于测试多态对象的测试用例,这些测试用例可以最终检测出程序代码中的多态关系的实现与规格说明中的定义是否一致。除了给出若干个用于从基于模型的蘑向对象形式规格说明构造测试用例的测试准则之外,本文还提出了一个用于描述这种测试用例推导过程的测试框架。我们用形式靓格说明语言O b j e c t - Z 来定义本文提出的测试框架。这样,测试框架的描述与规格说明的描述所采用的形式规格说明语言一致,从而避免了用另一种描述语言给读者带来的额外负担。本文对测试框架的阐述包括两个部分。第一部分是类测试框架。它用来描述类测试用例的推导过程,其中包括方法内测试用例、类内部测试用例、方法内
6、测试用例的产生过程以及类内部测试用例推导过程的定义。第二部分包括如何利用类层次结构在子类中重用父类的类测试框架。利用本文提出的这个测试框架,测试用例生成系统在构造测试用例的同时可以自动记录测试用例生成过程,从而为测试用例的管理和追踪提供了方便。最后,本文给出了一种应用求解线性规划和非线性不等式组对测试测试规格说明叶J 定义的测试输入进行求解得到可以运行的具体的测试数据的方法,并且介绍一个实现了上述提出的测试技术的系统原型。关键字:基于规格说明的软件测试、测试准则t 测试框架、面向对象测试、测试用例生成I I上海大学工学博士学位论文A b s t r a c tW i t ht h ed e v
7、 e l o p m e n to fi n f o r m a t i o nt e c h n i q u e ,t h es o f t w a r eg r o w sl a r g e ra n dl a r g e r H o wt og u a r a n t e ea n di m p r o v et h es o f t w a r eq u a i l t yb e c o m e st h em a i nc o n c e m e dp o i n tmt h ef i e l d A so n eo ft h ek e yt e c h n i q u e so f
8、g u a r a n t e e i n gs o f t w a r eq u a l i 吼s o f t w a r et e s t i n gv a l le f f e c t i v e l yd e t e c tt h ef a u l t si nt h es y s t e m A c c o r d i n gt ot h es t a t i s t i c s t h ec o s to fs o f t w a r et e s t i n ga c c o u n t sf o r4 0 i nt h ew h o l ec o s to fs o f t w
9、 a r ed e v e l o p m e n t W i t ht h ee n l a r g i n go fs o f t w a r e ,t h ep r o p o r t i o no fs o f t w a r et e s t i n gg r o w sl a r g e ri nt h es o f t w a r ed e y e l o p m e n t F o rs o m es a f e t yc r i t i c a ls y s t e m ,t h ec o s to f t e s t i n ga l m o s tc o r r e s
10、p o n d st ot h et r i p l eo rq u i n t u p l ec o s to fa l lo t h e rd e v e l o p i n gp h a s e T h u s ,i m p r o v i n gt h ee f f e c t i v i t ya n de f f i c i e n c yo ft e s t i n ga n dr e d u c i n gt h es o f t w a r ed e v e l o p i n gc o s tb e c o m e so n eo f t h eu r g e n tt a
11、 s k sf o rs o f t w a r ee n g i n e e r s T h ec o r ep r o b l e mo fs o f t w a r et e s t i n gi st e s tc a s e sg e n e r a t i o n A c c o r d i n gt ot h es o u r c et h a ti Su s e dt od e r i v et e s t s s o f t w a r et e s t i n gi sc l a s s i f i e di n t ot w oc a t e g o r i e s p
12、r o g r a mb a s e dt e s t i n ga n ds p e c i f i c a t i o nb a s e dt e s t i n g P r o g r a mb a s e dt e s t i n gm e a n st e s t e r su s ep r o g r a ms t m c t u r e st od e r i v et e s tc a s e s S p e c i f i c a t i o nb a s e dt e s t i n gm e a n st e s t e r su s et h es p e c i f
13、i c a t i o ni n s t e a do fp r o g r a ms t r u c t u r e st od e r i v et e s tc a s e s T h es p e c i f i c a t i o nb a s e dt e s t i n gc a nv e r i f yw h e t h e rap r o g r a mc o n f o r m st oi t ss p e c i f i c a t i o n ,w h i c hi st h ea i mo ft e s 血g F u r t h e r m o r e ,d u r
14、i n gs p e c i f i c a t i o nb a s e dt e s t i n gp r o c e s s ,t h ed e v e l o p m e n to ft e s tc a s e sc a nb ep a r a l l e lw i t ht h es o f t w a r ed e v e l o p m e n t T h a tc a nr e d u c et h et i m eo f s o f t w a r ed e v e l o p m e n t ,a n di m p r o v ed e v e l o p m e n t
15、e f f i c i e n c y S i n c ef o r m a ls p e c i f i c a t i o n sp o s s e s sp r e c i s en o t a t i o n sm a dc l e a rs e m a n t i c s ,a n dc a nb eu s e di nr e a s o n i n ga n dp r o v i n g ,t a k i n gf o r m a ls p e c i f i c a t i o n sa st h es o u r c eo fg e n e r a t i n gt e s t
16、c a s e sm a k e sa u t o m a t i ct e s tc a s e sg e n e r a t i o np o s s i b l e H o w e v e r , m o s tr e s e a r c ho ff o r m a ls p e c i f i c a t i o nb a s e dt e s tg e n e r a t i o nf o c u s e so na p p l y i n gb l a c k b o xt e s tc r i t e r i a ( s u c ha sc a t e g o r yp a r t i t i o nc r i t e r i a ,s t a t eg r a p hb a s e dc r i t e r i a ) o nd i f f e r e n tf o r m so ff o r m a ls p e c i f i c a t i o n s ( s u c ha s ,Zs c h e m a ,