基于UML模型的系统级测试用例生成方法

时间:2022-08-09 07:00:17

基于UML模型的系统级测试用例生成方法

摘要:采用基于UML模型的软件测试方法,主要整合用例图与顺序图进行系统级的软件测试。首先提出用例执行图(UEG)的生成算法、顺序执行图(SEG)的生成算法,及基于UEG和SEG,生成系统测试图(STG)的算法;其次,根据制定的三层次准则,遍历UEG、SEG、STG生成测试用例,主要解决交互错、场景错、用例执行错和用例依赖错等问题。最后,经实例分析和实验验证,该方法可以基于用例图和顺序图进行系统级的软件测试。

关键词: UML模型; 软件测试; 用例图; 顺序图; 测试用例

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

0引言

针对不同的研究目的、被测软件的具体特征,研究人员提出了状态机模型[1]、马尔可夫链模型[2]、UML模型[3]等。随着基于UML模型的广泛应用,基于UML模型的软件测试逐渐成为软件测试的发展趋势和主流。文献[4]提出了TOTEM系统测试方法(TestingObjectorientedsystemswiththeunifiedModelinglanguagesystemtestingmethodology),该方法分析用例之间的顺序依赖关系进而生成测试用例,其本质是一种预先明确初始状态的半自动化场景覆盖方法;文献[5-7]基于UML交互模型(顺序图(SequenceDiagram,SD)和协作图)主要检测对象间的交互错;其中,文献[5]仅针对实时系统;文献[6]采用类别划分法使用手动方式,基于顺序图做组件间的交互测试;文献[7]基于UML用例图(UsecaseDiagram,UD)与消息序列图做集成测试,检测被测系统组件间的交互错。文献[8]首先构造映射系统架构的图,然后遍历该图进而采用类别划分法手动的生成测试用例。

本文将被测系统转换为系统测试图,即首先将用例图转换为用例执行图(UsecasediagramExecutionGraph,UEG)、顺序图转换为顺序执行图(SequencediagramExecutionGraph,SEG),整合UEG与SEG为系统测试图(SystemTestingGraph,STG);同时,析取类图、数据词典等的相关约束信息并将其加入STG中。然后基于特定的三层次覆盖准则和错误模型,遍历UEG、SEG与STG,得到系统级测试用例。

6结语

本文将UML模型转换为可测试的模型,提出用例执行图UEG、顺序执行图SEG、系统测试图STG的生成算法及对UEG、SEG、STG的遍历算法,据此,生成系统级测试用例。该方法不需要对UML模型做任何修改或手工干预便可直接得到测试用例,有望与现有测试工具结合。

由于本文考虑模型和错误类型的有限性,只能对软件进行阶段性的固定错误类型的测试。下一步的工作在保证测试用例有效性的前提下,考虑UML2.0其他模型特性、增加检错类型,简化测试步骤,得到一个基于UML模型的更加实用、高效的测试方法。

参考文献:

[1]ZHENGJ,FANDJ,HUANFZQ,etal.Conformancecheckingofcomponentbasedsystemsforscenariobasedspecifications[C]//ICSESS2011:Proceedingsofthe2011IEEE2ndInternationalConferenceonSoftwareEngineeringandServiceScience.Piscataway,NJ:IEEEPress,2011:5-9.

[2]AVRITZERA,deSILVASE,LEAOE,etal.Automatedgenerationoftestcasesusingaperformabilitymodel[J].SoftwareIET,2011,5(2):113-119.

[3]ARITRAB,SUDIPTOG.TestinputgenerationusingUMLsequenceandstatemachinesmodels[C]//ICST2009:Proceedingsofthe2009InternationalConferenceonSoftwareTestingVerificationandValidation.Colorado:ICST,2009:121-130.

[4]BRIANDL,LABICHEY.AUMLbasedapproachtosystemtesting[J].JournalofSoftwareandSystemsModeling,2002,33(16):10-42.

[5]LETTRARIM,KLOSEJ.ScenariobasedmonitoringandtestingofrealtimeUMLmodels[C]//Proceedingsofthe4thInternationalConferenceToronto,LNCS2185.Berlin:SpringerVerlag,2011:312-328.

[6]BASANIERIF,BERTOLINOA,MARCHETTIE.ThecowsuitapproachtoplanningandderivingtestsuitesinUMLprojects[C]//ProceedingsoftheFifthInternationalConferenceontheUML.Berlin:SpringerVerlag,2008:383-397.

[7]SARMAM,DEBASISHKD,MALLRB.AutomatictestcasegenerationfromUMLsequencediagrams[C]//ADCOM:Proceedingsofthe2007InternationalConferenceonAdvancedComputingandCommunications.Guwahati:ADCOM,2007:60-65.

[8]SAMUELP,JOSEPHA.TestsequencegenerationfromUMLsequencediagrams[C]//SNPD:ProceedingsoftheNinthACISInternationalConferenceonSoftwareEngineering,ArtificialIntelligence,Networking,Parallel/DistributedComputing.Washington,DC:SNPD,2008:879-887.

[9]KOJW,SIMSH,SONGYJ.Testbasedmodeltransformationframeworkformobileapplication[C]//ICISA:Proceedingsofthe2011InternationalConferenceonInformationScienceandApplications.JejuIsland:ICISA,2011:1-7.

[10]LIUJH,pletepathcoveragetestingbasedonchange[J].JournalofComputerApplications,2012,32(11):3075-3081.

[11]NGUYENDP,LUUCT,TRUONGAH,etal.VerifyingimplementationofUMLsequencediagramsusingJavaPathFinder[C]//KSE:Proceedingsofthe2010SecondInternationalConferenceonKnowledgeandSystemsEngineering.Hanoi:KSE,2010:194-200.

[12]CHAIYM,FENGQY,WANGLM.ResearchonmethodsforgeneratingtestcasesofinterclassesinteractionbasedonUMLmodelsandOCLconstraints[J].ActaElectronicSinica,2013,41(6):1242-1248.

[13]HEH,CHENGCL,ZHANGZY,etal.EfficientanduniversaltestingmethodofuserinterfacebasedonSilkTestandXML[J].JournalofComputerApplications,2013,33(1):258-261.

上一篇:基于UML交互概览图的测试线索的生成方 下一篇:密集型多轮廓裁片的刀具空行程路径寻优