欢迎来到天天文库
浏览记录
ID:35462758
大小:65.90 KB
页数:8页
时间:2019-03-25
《软件测试技术_随堂练习01答案》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、随堂练习011・FindBugsA・查看FindBugs发现的问题,一共有几类问题,各是什么含义?将这几类问题翻译成中文;答:一共有以下三种类型的问题:1.Bug:InvocationoftoStringoncombinationinsolver.Matrix.niain(String[])ThecodeinvokestoStringonanarray,whichwillgenerateafairlyuselessrcsuItsuchas[C@16f0472.ConsiderusingArrays.toString
2、toconvcrtthearrayintoareadableStringthatgivesthecontentsofthearray.中文:在组合代码调用toString数组,这将产生一个相当无用的结果。考虑使用Arrays.toString方法将数组转化成可读的字符串。2.Bug:solver•1atrix.compute()concatenatesstringsusing+ina1oopThemethodseemstobebuildingaStringusingconcatenationinaloop-Ine
3、achiteration,theStringisconvertedtoaStringBuffer/StringBuilder,appendedto,andconvertedbacktoaString.Thiscanleadtoacostquadraticinthenumberofiterations,asthegrowingstringisrecopicdineachiteration.BetterperformancccanbeobtaincdbyusingaStringBuffcr(orStringBuiIde
4、rinJava1.5)explicitly.中文:这个方法似乎是建立在一个循环中使用连接字符串。在每个迭代中,字符串转换为StringBuffer/StringBuilder,附加到,转换回一个字符串。这可能导致成本数量的二次迭代,在每个迭代字符串复制。可以获得更好的性能通过使用StringBuffer显式(或StringBuilderJava1.5中)。3.Bug:Unreadfield:gui.MainWindow.mgameOutputThisfieldisneverread.Considerremoving
5、itfromtheclass.中文:gui.MainWindow.mgameOutput这个属性没有被读。这个字段是不会被程序读的。考虑把它从类屮移除。B.如何解决FindBugs指出的问题?请修改Sudoku程序,以改正所有FindBugs指出的问题。注意:同类错误仅需记录一次修改思想即可。答:1.使用Arrays.toString将数组转换为字符串。2.将String类型的该变量定义为StringBuffer类型的,并在循环体中用append()方法替代+操作。3.通过〃查找〃找出对应的属性的所有代码,并注释
6、删除。(或者调用print方法输出该属性)2・Junit源程序:packagesale;publicclassSaleMachine{privateintcount。fBeercountOfJuice,count。fFiveCents,countOfOneDollar;privateString[]typeOfGoods={"Beer","Juice"};privateStringresultOfDeal;publicSaleMachine(){initial();}publicvoidinitial(){//默
7、认售货机countOfBeer=3;count。fJuice=3;countOfFiveCents=3;countOfOneDollar=3;publicSaleMachine(intfiveCents,intoneDoUar,intnumOfBeer,intnumOfOrange)〃带参数的初始化售货机{count。fFiveCents=fiveCents;countOfOneDollar=oneDollar;count。fBeer=numOfBeer;count。fJuice=numOfOrange;}publ
8、icStringcurrentState(){//返回当前售货机状态Stringstate=”库存H+"啤酒:"+countOfBeer+"H+“橙汁:”+countOfDuice+””+”五角硬币:”+countOfFiveCents+““+"一元硬币:”+countOfOneDollar;returnstate;}publicString
此文档下载收益归作者所有