1006大设计翻译版航天器测试用例自动生成方法研究_第1页
1006大设计翻译版航天器测试用例自动生成方法研究_第2页
1006大设计翻译版航天器测试用例自动生成方法研究_第3页
1006大设计翻译版航天器测试用例自动生成方法研究_第4页
1006大设计翻译版航天器测试用例自动生成方法研究_第5页
免费预览已结束,剩余67页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Ⅳ、主要参考资,余丹.航天器自动化测试语言及系统[M].国防工业,2Yu,Linbin,etal.EfficientAlgorithmsforT-wayTestSequenceGeneration[C].IEEE,2012.YuanX,CohenMB,MemonAM.GUIinteractiontesting:Incorporatingeventcontext[J].IEEETransactionsonSoftware我,本及其研究工作是由在导师指导下独立完成的,在完成时所利用的一切资料均已考文献中列出。时间:2014年5:航天器,自动化测试,测SpacecraftAutomaticTestCasesGenerationMethodAuthor:ChenGeTutor:LvJianghuaWiththerapiddevelopmentofChina'saerospaceindustry,spacecrafttestworkloadincreaseddramatically.Handworkisnotfeasible,andcannotmeetthecurrentneedsofbatchproductionoftheparalleltest.Automatedtestingisthefundamentalwaytosolvethisproblem.Spacecrafttestcasesaretestsequenceswhilewhicharecombinationofoneormoretestinstructionsinaccordancewiththerelevantbusinesslogic.Currently,thetestsequencesismainlycomposedofprofessionaltestersempiricallymanualediting.Thetestsequencesareofpoorquality,andhavealotofredundant.Tosolvetheseproblems,basedonLTS(LabeledTransitionSystem)model,thispaperfocusesonageneral-purposespacecraftautomatictestsequencesgenerationmethodbasedonavarietyofconstraintrelations,andanoptimizationapproach.Itcannotonlyreducetheassociatedtesters’workloadandreducetheerrorrateoftestsequences,butalsoimprovethequalityoftestsequencesandreducethetestcost,.Furthertosayitcanimprovetheefficiencyofthespacecrafttest.Contentsofthispaperareasfollows:Basedonspacecrafttestconditions,we businesslogicrelationshipsbetweeninstructions,anddividethefunctionsofspacecrafttestcontenttomakeeachfunctionalmodule,whiceisacombinationofinstructioninaccordancewiththerelevantbusinesslogic,performsaspecificfunction.Onthisbasis,weproposeatwo-tierLTSmodel.Thistwo-tierLTSmodelhaveatestproject-levelandatestinstruction-level.Weconsiderthetestproject-levelasthemainLTS,andthetestproject-levelastheextensionLTS.Thishierarchicalmodelcaneffectivelyavoidthestateexplosionproblem,andlaythefoundationforbuildingageneral-purposespacecraftautomatictestsequencesgenerationmethod.DepthresearchbothhereandabroadexistingtestsequencegenerationonourLTShierarchicalmodel,weproposeageneral-purposespacecraftautomatictestsequencegenerationmethod.WeusetwopathselectionmethodstogenerateeventsequenceofmainLTSandexpensionLTS.Weintroducecombinationtestingideas,useAETG(AutomaticEfficientTestGenerator)tocompletemainLTSmapofexpensionLTS.Ultimay,weautomaticallygeneratespacecrafttestsequences.Andweuseparticleswarmalgorithmtooptimizetestsequencestoreduceredundancy.Thismethodcaneffectivelysupporttheautomaticallyspacecrafttestsequencesgenerationinvarioussub-systems.Weconductexperimentsonourgeneral-purposespacecraftautomatictestsequencegenerationmethod.Weyzetwopathselectionmethods’influenceonpathcoverage,thenumberoftestsequences,redundancyandgenerationtime.Experimentalresultsshowthatthemethodproposedinthispapercaneffectivelyachievetheautomaticgenerationoftestsequencesspacecraft.Inthispaper,basedonin-depthstudyoftherelevantdomesticandforeignautomatictestsequencegenerationmethod,wedesignandimplementationofageneral-purposelspacecraftautomatedtestsequencegenerationtool.:Spacecraft,AutomatedTesting,TestG 绪 课题来 课题背 课题意 研究内容和目 研究目 研究内 组织结 相关技术与内容介 基于GUI的测试用例生成方 组合测试方 航天器测试指令逻辑规则分 测试指令逻辑规则的初步分析和设 测试指令逻辑规则的详细设 LTS层次化模 相关定 层次化模 小 测试用例生成算法及优化策 LTS方式和配置文件说 测试用例生成算 目标序列构 事件序列生成算 测试用例的生 算法复杂度分 优化策 测试用例自动生成工具设计实现及实验分 测试用例生成工具设计与实 实验分 总 致 参考文 绪本课题来源于软件开发环境国家与中国空间技术合作项目“MTP(主测试处根本当前的多型号批产化测试需求,因此迫切需要提高航天器测试的自动化测研究内容和目标建立指令之间的逻辑关项具体功能为目的。因此,在航天器自动化测试软件平台基础上,深入分析测生成记转换图,构建出测试用例。构建测试用例的标准是完成路径的完,并检测生实验分 第六章:总结的贡献点,提出的不足之处并明确进一步工作计划。相关技术与内容介GUI(GraphicalUserInterface,图形用户接口)是现在软件的一个很重要的组成部GUIGUI软件。GUI软件作为一种非常有效地人机交互技术,也已经成为了交互式软件的关键部分。GUI接收用户输入产生的事件,并将其对GUI软件测试的开展的研究主要包括了一是如何对被测系统进行建模,和如何根据模型生成GUI软件测试用例。GUI测试的问题研究中,国际上,研究人员从各自的研究背景和应用需求出发,首先针对如何生成GUI测试的测试用例,研究人员提出了一些有借鉴意义的方法。LinbinYu、YuLei等人提出了基于转换系统LTS的T-way测试用例生成方法ATarget-OrientedAlgorithm、ABruteForceAlgorithm等[2],结合了组合测试的思件流图(EventFlowGragh)EFG和事件序列图(EventSequenceGragh)ESG的发现一个GUI的事件流图EFG或事件序列图ESG已经他们的研究需要,于GUI测试的测试用例生成的图,比Arlt,Stephan等人提出的事件依赖图(EventDependencyGragh)EDG[3]、YuanX,MemonAM等人提出的(EventInteractionGragh),简称EIG[4,5]、陈成军和薛云志事件处理函数图(Event-HandlerFunctionGraph)EHG[6]等。这些改进主要是去除对研究无用的一taS,LakshmiKV,SinhaS等人提出了针对需求的商业规则,通过对商业规则的来生成测试用例[8]。BelliF,BudnikCJ,WhiteLESG中的一个事件进行扩展的概念,并给出了详细的定义,并将一个GUI模型ESG图的补图作为错误的来源,进行了试验[9]。BelliFBeyazitM用大量的实验分析来验证了多个软件可靠性验证技术(SRAT)的优劣,并比较了EFGESG在生成路径时对软件可靠性验证试验检测到错误的概率,但是该模型的限制条件较多,适用范围不大[11]。YuanX,CohenMB,MemonAMEIGT-way序列覆盖GUI事件的基于他们执行的关系,利用运行时间状态来扩大输入空间提高错误检测,从而延伸了基于模GUI测试用例生成工作,并且他们验证了一些特定的错误需要特定的测试用例的集合和特定的测试才能被发现[5]。(S,Si,Sf,,R:S合,Sf∈S是结束状态的集合。2.2LTS可以被一个有向图描述,这个有向图LTS的状态,两个顶LTSLTS2-1是一个简单的LTS图的例子。图2-2是一个LTS图的应用的例子。2-1LTS2-2LTS应基于LTS组合测试方法组合测试(CombinatorialTesting)是一种测试用例生成方法。它把待测系统转换所有由两个参数共同作用而的缺陷。多个参数覆盖(t-way,t>2)组合测试可以因素共同作用的缺陷。随着t的个数的增加,虽然测试出缺陷的能力逐步上升,但AETGone-test-at-time,每次使用贪心算M个测试用例,然后从其中选择一个最优的加入到测试用例集中。相对于其它while(Uncover不为空选择参数PPPi使得该参数的值在所有未被覆盖的组合对集合Uncover中出现的次数最多fori1toP1P,剩下的参数随机排序,则这n个参数分别为P1P2P3',...,Pn在Uncover集中出现次数最多的取值)endwhile;用例越小。但是通过D.M.Cohen与S.R.Data的研究,当M的值大于50时,M的增加对于减少测试用例数没有明显作用,因此将50作为M的值[19]。航天器测试用例生成的LTS层次化模航天器测试指令逻辑规则分析那么对于指令的行为,给出一个标记Act0,用来描述这些指令的行为。Act0:=ra;rb| Switch{ra,rb,…,rn} Ifra Repeatera Waitra|Cooperate表3-1ra;ra||Switch{ra,rb,…,rnIfRepeateWaitCooperate77种行为,划分为第一类行为和第二类行为,其中第一类6种行为。n条简单指令(n≥2),且这些简单指令的行为只有第一类指令,rx来代替这些串行的简单指令,rx=rt+1;rt+2;…;rt+n。称这个代替了连续串行的简单指令的新动作rx为约减指令。(n≥2现在给出符合我们设计需要的指令行为的描述:AcAct=ra;rb Switch{ra,rb,…,rn If Repeate Wait|Cooperate 表3-2ra;令ra||Switch{ra,rb,…,rnIfRepeateWaitCooperate令来表示r的目的状态,event(r)∈Lr的事件标记。i)=src(ri+1),i=1,2,…,n-1对于给定的一个变换序列P=r1;r2;…;rn,与这个变换序列相对应的事件序列表示为event(P)=event(r1);event(r2);…;event(rn)3.3:efLTSM中的两个事件。Fee→f。变换3.4t-wayt个事件<event(r1),event(r2),…,event(rt)>,它对应的变换序列是<r1,r2,…,rt>,其中<r1,r2,…,rt>代表dest(ri)不一定等于src(ri+1),也就是说LTS中不一定是连续的,也就是说<event(r1),event(r2),…,event(rt)>中的事件t-way目标序列是一个有t个事件的序列,这些事件可以按照给定的顺序发生。way的目标序列。比如在图2-1中,<a,c><a,d>和<c,d>就不是2-way目标序列。3.5event(P)=event(r1);event(r2);…;event(rn),其对应的变换序列为r1;r2;…;rn,并且有src(r1)∈Si,dest(rn)∈Sf。3.6event(P)=event(r1);event(r2);…;event(rn)覆盖了一t-way的目标序列Q=<event(r1),event(r2),…,event(rt)>的条件是所有Q中的事件都在event(P)中LTSLTSLTS,再将3.7LTSM(S,Si,Sf,L,R)Mrn(Sx×Lc×Sy)来说,如果’rn的扩展LTS。LTSLTS3-1LTS举将每个测试项目的以具体的测试指令作为LTS事件的LTS称为该测试项目的扩展LTS。射之后得到的完整路径称为扩展LTS。指令之间的逻辑关系,并设计满足这些逻辑规则的LTS。TS都可以被算法识别,从而构造每个分系统的测试用例。BA机、与测控、数管等分系统匹配、运载状态信息通报及显示、力分析这些测试项目的时序关系,设计出仪表分系统的LTS。 表3-3LTS仪表控制器A切回A计,图3-33给出了其扩展LTSr2’:If 3-3r2的扩表3-4r2LTS事件说明AB、主C过压保护主ABCAB、主CS应答机ALTS中的状态和事件都变得很多。r2LTS3.1.2中指令行为的规则的一些举例说明,说明的过程也是按照详细的指令逻辑规则设计该扩展LTS的过程。TS的3的简单指令的串行:r1;r2;r3;r4;r5;r6;r7r1’7个串行的简单指令,r1’=r1;r2;r3;r4;r5;r6;r7。r2;r3;r4;r5使用“[]”操作得到单元指令[r2;r3;r4;r5],对约减指令r1’使用“[]”操作得到单元指令[r1’]。规则五的举例说明:对于仪表分系统中的飞船加电这条测试项目中的简单指令r8,Ifr8使用“[]”操作,使之成为单元指令[r8]后,可以进行If操作,得到行为指令If[r8]。If3-4r2LTS图明,形成的说明表格如表3-5所示:表3- LTS,下面是每个测试项目的LTSLTS图中的事件说明。3-5r1LTS表3-6r1LTSIf3-6r2LTS表3-7r2LTS3-7r3LTS表3-8r3LTS3-8r4LTS表3-9r4LTS

S1'Wait[r2'] Wait

Wait

3-9r5的扩LTS表3-10表r5LTS显示器1切至TV叠加显示模式2TVWait[r2']3-10r6LTS其中S0’LTSS5的等价状态时,S7’LTSS6的等价S0’LTSS4的等价状态时,S7’LTSS7的等价表3-11r6LTS仪表控制器A显示器1切至TV叠加显示模式显示器2切至TV叠加显示模式其中S0’LTSS6的等价状态时,S1’LTSS4的等价S0’LTSS7的等价状态时,S7’LTSS8的等价表3-12r7LTSB切Cooperate3-12r8的扩LTS其中表3-13r8LTSGNSS3-13r9LTS其中表3-14r9LTSIf表3-15r10LTSr11If If12的等价状态。表3-16表r11LTS3-16r12的扩LTS表3-17r12LTSCooperate3-17r13的扩LTS其中S0’LTSS13的等价状态,S1’LTSS14的等价状表3-18r13LTS 其中表3-19r14LTS其中S0’LTSS10的等价状态时,S1’LTSS19的等S0’LTSS11的等价状态时,S1’LTSS20的等S0’LTSS12的等价状态时,S1’LTSS21的等S0’LTSS15的等价状态时,S1’LTSS16的等表3-20r15LTS小结测试用例生成算法及优化LTS层次化模型生成事件序列,然后使用组合测试的方法生成测试用例。这里由LTS和扩LTS得到的路径称为事件序列,将完成扩LTS还原到LTS后得到的首先读入分系统的配置,生成2-way的目标序列,检查这些2-way目标序列是否合2-way目标序列。基于合法的2-wayt-way目标序列。遍历该分系统的主LTS,得到以测试项目为事件的事件序列,并对该事件序列进行生成生成2way目标序读入配遍历以测试项目为事件LTS,生成测试路组合测试的算法组合测试的算法优将测试项目作为参数,每个测试项目的扩展LS得到的路径作为取值,使用用组合测试的方法(ATG算法)4-1算法总体流程使用邻接矩阵的形式构建的LTS,第i行第j列若为0则代表状态i没有指向状j的边,若n(n>0)则代表状i有指向j的边,且这个事件是rn。用这样的方式先主LTS,再所有测试项目的扩展LTS。下图是仪表分系统的主LTS的邻接矩阵,22代表一共有22个状态,算法可以自动识别结束状态,不需要特别输入。01000000000000000000000020000000000000000000000300000000000000000000004000000000000000000000050600000000000000000000600800000000000000007000080000000000700000000000000000000008000000000000900000000000000000000000000000000000000000001112000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000能会对不同的环进行不同次数的遍历,时需要记录每个环的遍历次数。1121222331每行的第一个数字代表第几个扩展LTS,第二个数字代表是该扩展LTS中的第几个事件。后面就是具体的指令,指令是根据第三章给出的对指令行为的定义和每个扩展LTS中指令的函数化描述得到的。测试用例生成算法t-wayt-way参数取值组合是有很大不同的。t-wayt-way目标序列有时序的约束,比生t-way目标序列要更加复杂。t-way目标序列的顺序问题带来的影响就是对构建一个致我们直接生成t-way目标序列然后对每一条判断其在LTS中的这个办法是不现2-wayn个(n>0)事件2-way目标r1;r2来r1r2nn22-way目标序列。得些能在LTS中找到,对于不能找到的目标序列就是不合法的,需要舍弃。给出伪代码描述fori=1toforj=1toendendfori=1toLTS2-endwhileend代码中使用三个函数来实现,CreatePathPair()2-way目标序列的功能,LegalCreatePathPair()函数用来存取满足LTS的合法2-way目标序列,该函数中调用IfLegal()函数来判断该条2-way目标序列是否是合法的。2-way2-wayt-way合于某个(t-1)-wayt-1rx,再找到rx为第一个事2-way合法目标序列,将所有的rx为第一个事2-way合法目标序列进行该项操作,就可以得到所有的t-way合法目标序列。采用反证法,假设所有(t-1)-way合法目标序列都已经得到了,按照上述生成方法,有这样一t-way合法序列没有被得到:ra;rb;...;rx;ry,取它的t-1个合法序ra;rb;...;rx。ra;rb;...;rx一定是已经得到了的,因为所有(t-1)-way合法目标序列都已经得到了。那么ra;rb;...;rx;ry合法的,也rx;ry是合法2-way目标序列,那么按ra;rb;...;rx这条(t-1)-wayrx;ry2-way目标序列得到ra;rb;...;rx;ry这条合法的t-way目标序列,这与假设,故假设不2-way4.3.1中生成了,所以可以按照上述方法得到所有的t-way合法目标序列。fori=1toLegal_t-//i循环取所有的(t-1)-wayforp=1tot-k记录t-way合法序列的个数endforj=1toLegal_2-//2-way目标序列的第一个事(t-1)-way序列t-1个事件,将这个2-way目标序列的第二个事件拼接上,得到t-way目标序endend代码中使用while(仍有路径未被覆盖while(未到达结束状态if(进入环)endend第二种方法是一种和组合测试的贪心算法类似的法,即每次寻找可以覆盖更大,但是可以覆盖较多的t-way事件序列。rx时,ry;rxry在当ry;rx这个未被覆盖的目标序列的覆盖,需要考虑。对于第三种和第四种情况,在统rx2-way目标序列集合中的次数来说,若是第三种情况,那么次数加一,若是第四种情况,给其一个权重值P(P>=1),P的取值对生成事件序列的影响将测试用例生成中一个的是如何处理环,这回使事件序列无穷扩展。为了解决这个问题,很多中对环的处理是进入环后遍历环一次,之后不再环或者出现循环就停止生成或者是限制测试用例的最大长度YuLinbin等人AnSCC-BaseAlgorithm中说道先将环抽出,使图变成一个无环的图,遍历这个无环图,生成序列,将t-wayt-way4-way目标序列是不可能被覆盖的,如果给定该环的遍历次数是3,那么前两个合法的4-way目标序列是不可能被覆盖的,而第三个可以被覆盖。只有当给定该环的遍历次数是4时,这三个合法的4-way目标序列才都有可能被覆盖。未被覆盖的2-way目标序列的贪心算法的路径不同大小的P值对生成的事对t-way目标序列的覆盖情况,给出仍未被覆盖的t-way目标序列。LTS3章中对指令行为的定义以及对指令的路径选择方法是选择次数较少的路径进行,以便较快生成事件序列。GetMainPath();T-waySeqCoverageDetection();UncoverTimescCount();PairCoverCheck();GetExtendPath()LTSLTS的事件序列生成功能。GetMainPath()按照上述算法函数实现主LTS的事件序列生成功能,其中需要UncoverTimescCount()2-way目标序列PairCoverCheck()2-way目标序列中已被本次生成给覆盖掉的目标序列删除。T-waySeqCoverageDetection()t-way目标序列的覆盖度,GetExtendPath()函数用来生成所有的扩展LTS的事件序列。MAETG算法描述在第二章已经给出。下面说明AETG算法在生成测试用例中的应用。假设比这样一个主LTSr1;r2;r3;r4;r5。测试项目1的扩展LTS只生产了一1A,23LTS32A,2B,2C和3A,3B,3C,45LTS44A,4B,4C,4D和 那么r2、r3、r4、r5这四个测a、b、c、d四个参3,3,4,4这些取值个数。下面a、b、c、d四个参数对用AETG算法,得到如何选择扩展LTS的路1、2、3、3a参数选择第一个取值,b2个取值,c参数选择第三个取值,d参数选择第四个取值。也就是测试项1A;2A;3B;4C;5C1A只是代表路径的名称,实际生成的时候是一条完整的以指令为事件的事件序列。图4-3描述了上述过程。2A:r2(1);r2(2)4C:r4(1);r4(2);r4(4)fori=1toif(找到的测试项目数<组合测试力度endAETG算法实现构建UC集值向量fori=1to计算参数i的每个值在UC集中出现的次数end fori=1toMendfori=1to每次对c[1]到c[paraN]的参数确定取值end}void参数向量用0,1代表改组合中是否包含该参数比如对于这样五个参数01,并把它右边的1全部替换成0。如果末尾1,0,01,0替换1,右边1替换成0,得到的就是我们要的下一个向量。如果末尾0,0,01,把这0替换1,0右0,n-c-1个数字为1,n1的总数,c是这0左边的1的个数。void构建时先从每个参数向量中读出当前要构建的UC集的参数,然后根据算法来构建数字小于其最大值,给这一位数字加1,并且将这个数字右边的数字全部置0,直到每一位都取到构建了每个参数向量的UC集,存放在UCV[][]数组中,第一维代表是第几个UC集,第二维代表是UC集中的第几个值。需要注意的是,UC集中的取值和参数时密切相关的,我们还需要知道这个值是那个参数的,于是给每一个UCV[][]=参数号*100+值,比如UCV[11][0]=104UCV[11][1]=200,UCV[11][2]=402代表第11UC集中取的分别是参14,参20和参数4的值2UC集中其力度都是不同UCVW[]来记录每一个的力度,UCVN来记录UC集的个数。voidwhileUCVN>0,UC集被覆盖了,那么构造结束。whilefor循环,i为每次构这个参数的序号为i1。继续i循环,判断后面参数的取值。AETG算法有一个随机排列的过程,就是将出了第一次选择的那个参数,对剩下的参数进行随机排列,来进行构造,并且重复多次,取覆盖了最多的UC集的那一次排的序列存为c[i],已经选择了的那个为c[0]。那么继续构造后面的参数。选择一个参数的一个值时,每次都判断它与某个UC集中的某个项是否符合,若符合,则判断它和这次的这条测试用例中前面已经构建了的参数的取值与这条UC集的项是否符合,因为这一项的全部取值都不符合,并且这个参数在这次构建的UC集中已经确定了取值了,部满足条件,则可以判断是覆盖的。取出覆盖了最多UC集中的项目的那个参数的那个取值,作为这个参数的取值,若都没有覆盖,调用used()函数,选取这个参数取值次数在使AETG算法得到了每条主LTS的事件序列的每个测试可以将其合成称为一个测试用例了。首先将它们还原成数字形式的测试用例,比如主LTS路径为:1234589101010101111111115AETG的结果 代码使CombinePath()函数还原数字形式的测试项目。使ReadFunctionDescription()用例很长,使用PrintfFunctionPath()直接输出函数形式的测试用例。LTSn个转换,m个事件,2-wayO(m3)的时间,生成所有t-way合法目标序O(mt)的时间,生成LTS的事件序列花费的时间为O(mn4),假mLTSiLTSp(i)个转换,q(i)个事件,那么生∑LTSO(𝑚[p(i)q(i)2])t’∑ 𝑚{s(i)2log[s(i)]}),其中O(m3+mt+ 𝑚[p(i)q(i)2]+ 𝑚{s(i)2log[s(i)]})2 25+∑

22

L(i)

)] 优化策略微粒群优化PSO算法:每一(称为一个粒子都被赋予了一个随机速度并在整个问题空间中流动2)具有功的进化主要是通过之间的合作与竞争来实现的PSO算法不像遗传算法那样对进行选择、交叉和变异操作,而是将群体中的每个视为搜索空间中一个没有质量和体积的粒子(点),这些粒子在搜索空间中以由m个粒子组成一个群体,存在于d中,在每次迭代中第i个粒子的位置表Xi(txi1txi2txid(t,速度表示为Vi(tvi1tvi2tvid(t。开始执PSO算m个粒子的位置和速度,然后通过迭代寻找最优解,在每一次迭代中,粒子通过两个极值来更新自己的速度和位置:一个极值是粒子本身迄今搜t1i根据下列规则来更新自己的速度和位置:公式 Vik(t+1)=ωνik(t)+C1rand1(Pik(t)-Xik(t))+C2rand2(Pgk(t)-公式 Xik(t+1)=Xik(t)PSO粒子的pbest坐标设置为其当前位置。计算每个粒子的适应值根据公式4.1和公式4.2,更新每个粒子的位置和飞行速度AETG算法上的运用用k表示k个参数,假设一条测试用例一些参数值确定,使用PSO算法来最优值。然后每个粒子再根据公式1、2更新自己的位置和速度。测试用例自动生成工具设计实现及实验分测试用例生成工具设计与实现(1)开发语CPU:In(R)Core(TM)2DuoCPUE7500@操作系统:Windows运行工具:VisualStudioLTS和各个测试项LTS的三个环的遍历次数都是3,路径选择方法则是使用两使用覆盖未被覆盖的2-way目标序列的贪心算法的路径选择方法,P1,AETG算法的测试力度取3。LTSconfig.txtfunction.txt两个文件后,首先输出生成的主LTS的事件序列数和各条主LTS的事件序列。图5-1是输出结果。5-1LTS事件序列输出结然后25-way的目标序列yn来判断是5-25-33-way5-2覆盖度检5-3未被覆盖3-way目标序然后提示输入AETG算法的力度这里输入3作为AETG算度。输入AETG算法力度之后,输出三个txt文件。AETGOutput.txtCombinePathOutput.txt和AETGOutput.txtAETGLTS事件序列、该条事AEGT算法、每个参数的取值个数分别是多少、生成的测试用例AETG5-4AETGOutput.txt文件的截图。5-4AETGOutput.txt文CombinePathOutput.txt文件记录了将测试项目的扩展LTS中的序列还原到主LTS的表该测试项目的第几条指令。图5-5是的CombinePathOutput.txt文件截图。5-5CombinePathOutput.txt文 FunctionPathOutput.txt文件记录了基于上面的数字形式的测试用例得到的函数形式的测试用例。图5-6FunctionPathOutput.txt文件的截图。5-6FunctionPathOutput.txt文 3.3.3中测试指令逻辑规则的详细设计的。测试时可将实验分析第一种路径选择方法是每次寻找次数最少的变换进行。第二种方法是一种和组合测试的贪心算法类似的法,即每次寻找可以覆盖的未被覆盖的目标序下面给出实验的说明,以第有路径的。路径分别是:12345675675676789101010123462346789111111111213142-way目标序列覆盖检查(已覆盖数/总数2-way目标序列覆盖检查(已覆盖数/总数2-way目标序列覆盖检查(已覆盖数/总数LTS事件序列的最小长度:7主LTS事件序列冗余度:4.67测试用例冗余度:验数据如表5-1、表5-2和表5-3所示。表5-1LTS列冗余度6777777表5-2LTS表5-3据,表5-3则给出了最后生成的测试用例的数据。路径选择方法,可以较快完成路径的,生成的事件序列的数量比较少,测试用例t-way事件序列的覆盖度不够高。而第二种方法,即每次寻找可以覆盖的未被覆盖的目标序列集合中的目标序列的变换来。相较但是可以覆盖较多的t-way事件序列。对于第二种方法中的P值,随着P值得增大,可以看到生成的事件序列数减少,最随着P的增大呈现了一个先增后降的情况,当P=2时覆盖了最多的目标序列,覆盖率最P≥3时覆盖率的下降很缓慢。图5-7P值对覆盖率的影响情况。2-way目标序列覆盖情况3-way目标序列覆盖情况4-way目标序列覆盖情5-way2-way目标序列覆盖情况3-way目标序列覆盖情况4-way目标序列覆盖情5-way目标序列覆盖情况6-way目标序列覆盖情方法P=P=P=P=P=添加了针对AETG算法的微粒AETG算法生成的测试用例5-45-5是微粒群优化算法的实验表5-4数数615665表5-5度度 05-82-wayAETG添加微粒群算法的测试用例冗余度对05-93wayAETG添加微粒群算法的测试用例冗余度对2-wayAETG3way的AETG算法得到的测试用例的优化效果明显。总的逻辑关系,为构建航天器测试的LTS模型提供了前提。通过将分系统的测的可行办法,有效避免了LTS中的状态问题。没有考虑指令的参数在测试用例生成中的自动生成问题致历,结识了一群志同道合的好朋友,收获了我将珍惜一生的友谊!值此完成之际,谨向所有在期间给予我指导、帮助、关心和支持的老师、同学、朋友们致衷心感谢我的指导老师老师,本课题的研究工作自始至终是在指导下况。吕老师这种严谨的治学态度、以及的作风给我留下了深刻的印象,为感谢课题组的高世伟师兄和蒋亚若,高师兄扎实的专业知识和丰富的项目开我弄清其中的道理。并且感谢他们在撰写、课题进行时所给予我的启发和帮助,题和,在我没有思路和方向的时候谢谢的关心和帮助!休闲的时光是我美好的回忆,与之间的友谊是我一辈子的宝贵! 感谢四年来指导过我帮助过我的老师们,是的谆谆教诲和耐心指导,让我打下了扎实的专业知识基础,更重要的是,从身上我明白了成为社会栋梁的意义并参考文[1],余丹.航天器自动化测试语言及系统[M].国防工业,YuL,LeiY,KackerRN,etal.EfficientAlgorithmsforT-wayTestSequenceEngineeringofComplexComputerSystems(ICECCS),201217thInternationalConferenceon.IEEE,2012:220-229.ArltS,BanerjeeI,BertoliniC,etal.Grey-boxGUITesting:EfficientGenerationofEventSequences[J].arXivpreprintarXiv,2012.YuanX,CohenMB,MemonAM.GUIinteractiontesting:Incorporatingeventcontext[J].IEEETransactionsonSoftwareEngineering,2011.YuanX,MemonAM.Generatingeventsequence-basedtestcasesusingGUIruntimestateedback[J].IEEETransactionsonSoftware杨瑞,陈振宇,张智轶.一种基于扩展有限状态机的自动化测试用例生成方法[J].中国科学,ThummalapentaS,LakshmiKV,SinhaS,etal.Guidedtestgenerationforweb[C]201335thInternationalConferenceonSoftwareEngineering(ICSE).IEEE,BelliF,BudnikCJ,WhiteL.Event‐basedmodelling,ysisandtestingofuserinteractions:approachandcasestudy[J].SoftwareTesting,VerificationandReliability,2006,16(1):3-3 BelliF,BeyazitM,GülerN.Event-BasedGUITestingandReliabilityAssessmentTechniques--AnExperimentalInsight

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论