基于UML交互概览图的测试线索的生成方

时间:2022-08-03 05:48:21

基于UML交互概览图的测试线索的生成方

摘要:针对单一UML模型测试不充分的问题,结合UML2.0交互概览图的特点开展测试方法研究,提出一种测试线索自动生成的方法。首先,给出UML类图、顺序图、交互概览图(OID)的形式化定义;通过提取交互概览图的流程信息和对象交互信息分别构造节点控制流图(NCFG)和消息序列图(MSD);将从MSD提取的消息路径嵌入到NCFG中,构造可测试交互概览图模型;最后采用两两覆盖准则生成测试线索。实验验证了该方法自动生成的测试线索在保证测试充分性的前提下可避免组合爆炸。

关键词: UML模型; 交互概览图; 流程信息; 覆盖准则; 测试线索

中图分类号: TP311.5 文献标志码: A

0引言

目前基于UML模型的软件测试是基于模型软件测试的主流选择。在基于UML模型的软件测试[1-5]中,大多数是针对顺序图、状态图、活动图等单一模型进行测试研究的,而单一模型只能侧重反映系统的某个层面的信息,不能对系统进行充分和完备的测试。

交互概览图(InteractionOverviewDiagram,IOD)[6-7]是对象管理组织(ObjectManagementGroup,OMG)在UML2.0[8-10]中提出了一种新的图,能够在系统业务流程和对象间交互细节两个层面上反映系统的信息。交互概览图IOD有效地克服了UML活动图在对象间交互细节描述的欠缺以及UML顺序图不能有效地表达复杂对象交互及宏观更改的缺陷。

国外对交互概览图的形式化已有了一定的研究[6-7,11],但没有针对交互概览图提取测试线索的研究,国内基于UML2.0交互概览图的软件测试较少。UML交互概览图的特性决定了基于UML交互概览图的测试既可以获取较充分和完备的测试线索,测试线索是指从图的起始节点到结束节点的一条路径。

本文首先对UML交互概览图、类图、顺序图进行形式化定义,构造可测试交互概览图模型,针对构造的模型设计覆盖准则并生成测试线索。最后通过实验对所提方法进行了验证。

1UML模型形式化定义

UML模型的半形式化特性使得无法直接对UML模型进行信息的提取,因此需要对UML交互概览图及其相关的模型以数学的方式进行形式化描述。

6结语

本文针对交互概览图的特点,提出了一种结合类图、顺序图、交互概览图自动生成测试线索的方法。该方法考虑了UML2.0顺序图中的新特性如组合框alt、loop、opt、break等对测试的影响;针对可测试交互概览图的并发、循环、分支结构设计相应的覆盖准则,自动生成的测试线索能够完成对系统的充分测试。通过对酒店管理系统交互概览图的分析,对本文方法进行了验证,生成完备测试线索比路径覆盖产生的测试线索减少了16条(44%),有效地避免组合爆炸问题。

今后将进一步研究:1)本文只考虑了同步调用消息以及组合框中的alt、loop、break及opt对软件测试的影响,后续工作可以对异步消息的调用和其他更多组合框及其嵌套进行处理;2)对模型中的嵌套结构和更加复杂的结构进行研究提出更加优化的覆盖准则,以保证软件测试充分性和提高测试的效率。

参考文献:

[1]JIANGM,WANGTQ,PANJG.UMLstatediagrambasedtestcasegenerationofOOsoftware[J].ComputerScience,2006,33(6):284-290.

[2]ZHAOX,LIULL,LUOHP,etal.MethodoftestscenariogenerationbasedonUMLdynamicview[J].JournalofComputerApplications,2009,29(5):1385-1388.

[3]SUCC,WANGXJ.ResearchonautomaticgeneratingtestcasemethodbasedonUMLactivitydiagram[J].ComputerTechnologyandDevelopment,2010,20(8):49-55.

[4]LIXQ,CUIJ,CAILZ.ResearchofsoftwaretestbasedonUMLstatecharts[J].ComputerEngineering,2011,37(18):32-34.

[5]LIZQ,SHAOPN,ZHUH.TestcasesgenerationbasedonUMLsequencediagram[J].ComputerEngineering,2010,36(22):58-60.

[6]BOUABANATEBIBELT.Semanticsoftheinteractionoverviewdiagram[C]//IRI2009:Proceedingsofthe2009IEEEInternationalConferenceonInformationReuse&Integration.Piscataway,NJ:IEEEPress,2009:278-283.

[7]BOUABANATEBIBELT.UML2interactionoverviewdiagramvalidation[C]//DepCosRELCOMEX2009:Proceedingsof2009theFourthInternationalConferenceonDependabilityofComputerSystems.Piscataway,NJ:IEEEPress,2009:11-16.

[8]TANYJ.Elephant—thinkinginUML[M].Beijing:ChinaWaterConservancyandHydropowerPress,2012.

[9]BLAHAM,RUMBAUGHJ.ObjectorientedmodelinganddesignwithUML[M].2nded.CHEH,YANGM,translated.Beijing:Posts&TelecommunicationsPress,2011.

[10]MILESR,HAMILTONK.LearningUML2.0[M].WANGQ,translated.Beijing:TsinghuaUniversityPress,2007.

[11]BARESIL,MORZENTIA,MOTTAA,etal.Frominteractionoverviewdiagramstotemporallogic[M]//ModelsinSoftwareEngineering.Berlin:SpringerVerlag,2011:90-104.

[12]ZENGY,DINGN,ZHOUM.ActivitydiagrampolymorphismtestcasesgenerationmethodwithOCL[J].ComputerEngineering,2012,38(10):34-37.

[13]CAOY,WANGJ.UML2.0foundationandthemodelingtutorialexamplesofRSA[M].Beijing:Posts&TelecommunicationsPress,2011.

[14]FENGQ,WANGL.ResearchonmethodsforgeneratingtestcasesofinterclassesinterationbasedonUMLmodelsandOCLconstraints[D].Zhengzhou:ZhengzhouUniversity,2012:38-40.

[15]COHENDM,DALALSR,FREDMANML,etal.TheAETGsystem:anapproachtotestingbasedoncombinatorialdesign[J].IEEETransactionsonSoftwareEngineering,1997,23(7):437-444.

上一篇:基于局部聚类的自适应线性近邻传递分类算法 下一篇:基于UML模型的系统级测试用例生成方法