认证主体:阳春市顺腾网络科技有限公司
IP属地:广东
统一社会信用代码/组织机构代码
91441781MA54BKNN94
1、..常州信息职业技术学院学生毕业设计(论文)报告系别:软件学院专业:软件技术(对日外包)班号:软件117学生姓名:居富山学生学号:1108203719设计(论文)题目:软件测试方法技术的研究_--静态测试指导教师:简勇设计地点:常州信息职业技术学院起迄日期:2013.6.25-2013.11.20..毕毕业业设设计计(论论文文)任任务务书书专业专业软件技术(对日外包)班级班级软件117姓名姓名居富山实践单位名称:科大讯飞科技有限公司实践岗位名称:测试员岗位职责:保证产品质量符合客户
3、悉常用的软件测试工具,如QTP、TD、Runner等,掌握一种或多种工具三、主要工作内容:1.编写测试计划:阅读项目说明书,掌握软件性能、特点、使用方法等制定测试计划2.编写测试用例:按照测试计划,确认测试的范围重点、要求,编写测试用例3.执行测试,根据测试用例进行测试,发现软件缺陷4.编写测试报告,对测试结果进行分析四、主要参考文献:1、RexBlack.郑丹丹,王华.软件测试基础M.1.北京:人民邮电出版社,2013.52、Patton,R.张小松.软件测试M.1-3.北京:机械工业出版社,2006.43、(美)James,Whittaker,JasonArb
4、on,JeffCarollo.黄利,李中杰,薛明.Google软件测试之道M.1.北京:人民邮电出版社,2013.104、李龙.软件测试实用技术与常用模版M.2.北京:机械工业出版社,2010.105、马瑟.王峰.软件测试基础教程M.1.北京:机械工业出版社,2011.86、惠特克.方敏,张胜,钟颂东.探索式软件测试M.1.北京:清华大学出版社,2010.04..7、利马耶.黄晓磊,曾琼.软件测试原理、技术及工具M.1.北京:清华大学出版社,2011.38、(美)凯纳.韩柯.软件测试经验与教训M.1.北京:机械工业出版社,2004.1..9、古乐、史九林.
5、软件测试技术概论M.1.北京:清华大学出版社,200410、刘纯录、黄子河、陈渌萍.软件评测师教程M.1-3.北京:清华大学出版社,2011.9学生(签名)年月日指导教师(签名)年月日教研室主任(签名)年月日系主任(签名)年月日..毕毕业业设设计计(论论文文)开开题题报报告告设计(论文)题设计(论文)题目目软件测试方法技术的研究静态测试一、选题的背景和意义:随着社会现代化的发展,软件越来越成为了人们生活中必不可少的工具。人们对于软件的依赖性也是越来越大,而软件的也是越来越丰富从而来满足人们的需求。但是软件的丰富性与复杂程度的提高
6、,大大地增加了软件测试的难度,对于测试者来说这无疑是一件很痛苦的事情。因为软件测试是软件质量的重要保证,其地位在软件开发过程中也更加重要。如何去提高软件的生命质量,深入研究软件的测试方法,提高软件的可靠性,满足的需求,成为了当今的软件设计的重要组成部分。二、课题研究的主要内容:本文主要是对软件测试方法技术的研究静态测试的研究。通过对软件测试基础知识的了解,以及静态测试的详细介绍,是大家对静态测试有了一个详细的认知。静态测试包括代码检查、静态结构分析、代码质量度量等。它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行。代码检查包括代码走查、桌面检查、代码审查等
7、,主要检查代码和设计的一致性,代码对标准的遵循、可读性,代码的逻辑表达的正确性,代码结构的合理性等方面;可以发现违背程序编写标准的问题,程序中不安全、不明确和模糊的部分,找出程序中不可移植部分、违背程序编程风格的问题,包括变量检查、命名和类型审查、程序逻辑审查、程序语法检查和程序结构检查等内容。三、主要研究(设计)方法论述:首先,对软件测试方法技术的研究静态测试简述,说明研究静态测试的意义。其次,对静态测试的内容、方法、工具、要点进行分析研究,如何去进行静态测试,需要注意什么。随后,对静态测试进行结论与展望,总结静态测试,描述静态测试的前景及未来。最后,对此次论文老师和同
9、统整合2013.9.11-2013.9.15系统模块测试2013.9.16-2013.9.30编写项目设计报告并修改2013.10.1-2013.11.1毕业论文撰写2013.11.2-2013.11.20修改与完善,准备答辩五、指导教师意见:指导教师签名:年月日六、系部意见:系主任签名:年月日..目录摘要.1Abstract.2第一章绪论.31.1课题的研究背景及意义.31.2国内软件测试的现状及前景.3第二章软件测试概述.52.1软件测试的定义和实质.52.1.1软件测试的定义.52.1.2软件测试的实质.5
10、2.2软件测试的目的与原则.62.2.1软件测试的目的.62.2.2软件测试的原则.72.3软件测试的工具.8第三章静态测试.103.1静态测试简介.103.2静态测试学术解释.103.3静态测试编码规范.113.4静态测试质量度量.113.5静态测试错误检测.123.6静态测试分析工具.133.7静态测试测试要点.143.7.1挑选合适的复审员.143.7.2管理部门的参与.143.7.3注意事项.153.7.4技术复审与项目管理.153.7.5复审领导.153.7.6记录员.163.7.7规则和惯例.173.7.
11、8规则.173.7.9用户与复审.173.8静态测试与动态测试的区别.17第四章结论与展望.194.1结论.194.2展望.19致谢.20参考文献.21..摘要随着社会现代化的发展,软件越来越成为了人们生活中必不可少的工具。人们对于软件的依赖性也是越来越大,而软件的也是越来越丰富从而来满足人们的需求。但是软件的丰富性与复杂程度的提高,大大地增加了软件测试的难度,对于测试者来说这无疑是一件很痛苦的事情。因为软件测试是软件质量的重要保证,其地位在软件开发过程中也更加重要。如何去提高软件的生命质量,深入研究软件的测试方法,提高软件的可靠性,满足的需求,成
12、为了当今的软件设计的重要组成部分。回想一下数十年来软件测试技术在中国的发展,我们不难发现,软件测试技术在不断地发展,不断地细分,以满足当今社会的需求。从最初人们粗浅的认识软件测试,到如今系统化的发展,当真是日新月异。本文主要介绍了静态测试方法,包括代码检查、静态结构分析、代码质量度量等。它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行。在实际使用中,代码检查比动态测试更有效率,能快速找到缺陷,发现30%70%的逻辑设计和编码缺陷,可以有效及时地挽回成本损失。例如:航天飞机搭乘项目在设计或代码评审时消除一个缺陷的成本为一美元,在系统测试时为13美元
13、,交付使用后92美元;电信公司审查时发现和纠正一个缺陷的平均费用为200美元,客户验收测试时发现的缺陷平均花费4200美元等等。这些事例都说明了静态测试在软件测试中的重要性。【关键词关键词】:软件测试;软件质量;静态测试;测试要点;测试简介..AbstractWiththedevelopmentofthesocietymodernization,softwareincreasinglybecomeanessentialtoolinpeopleslife.Peoplearemoredependentonsoftwareisa
14、lsoincreasing,whilethesoftwareisbecomingmoreandmorerichinordertomeettheneedsofthepeople.Buttherichnessandcomplexityofsoftwareincrease,greatlyincreasedthedifficultyofsoftwaretesting,thisisaverypainfulthingfortesters.Becausethesoftwaretestingisanimporta
15、ntsoftwarequalityassurance,itsstatusismoreimportantinthesoftwaredevelopmentprocess.Howtoimprovethequalityoflifeofsoftwaretestingmethods,in-depthstudyofthesoftware,improvesoftwarereliability,tomeetthedemand,hasbecomeanimportantpartoftodayssoftwaredesign.R
16、ecallthatinthepastdozensofyears,thedevelopmentofChinasoftwaretestingtechnology,wediscovernothard,thedevelopmentofsoftwaretestingtechnologyisconstantly,constantlysubdivision,inordertomeettheneedsoftodayssociety.Fromthefirstpeopleshallowunderstandingofsoftw
17、aretesting,uptonowthedevelopmentofsystematicchangerapidly,itis.Thispapermainlyintroducesthestatictestmethod,includingthecodeinspection,staticstructuralanalysis,codequalitymetrics.Itcanbecarriedoutbytheartificial,givefullplaytotheadvantagesoflogicthinkin
18、g,canalsoautomaticallywiththehelpofsoftwaretools.Inactualuse,thecodechecksthandynamictestsaremoreefficient,canquicklyfindthedefectsfoundin30%70%,thelogicaldesignandcodingdefects,caneffectivelysavethecostloss.Forexample:theshuttleonaprojecttoeliminat
19、ethedefectsinthedesignorcodereviewforthecostofonedollar,inthetestingsystemfor$13to$92,afterdelivery;Telecomreviewfoundandcorrectedaflawoftheaveragecostof$200,defectsfoundcustomeracceptancetestoftheaveragecostof4200thedollarandsoon.Theseexamples
21、人员都没有。可想而知,我国当今的软件产业是多么的薄弱,严重的制约了我国软件产业的发展。没有很好地软件测试工作为产品的开发把关,怎么会有完美的、符合客户要求的产品呈现。所以软件测试在软件开发中的地位日渐提高,软件测试影响也越来越大。软件测试(softwaretesting),描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。或者用他的经典定义来说,在规定的条件下对程序进行操作,以发现错误,衡量软件质量,并对其是否能满足设计要求进行的过程。软件系统,作为一种人类开发出来的工具,存在缺陷是必然的结果。毕竟,人类不是上帝,不是神,不可能做出一种完美无缺的软件系统出来。而
22、软件测试存在的必要就是将这种存在的缺陷降到最低点,或者说降到符合客户的需求的阶段。你可能会认为软件中存在一个小错误没什么大不了的,只要软件能运行就不需要管它了。如果你真的这样认为,就是大错特错了,往往一个小错误造成上百万、千万的损失的不在少数。所以,软件的缺陷要尽早在前期发现,发现的越早越能挽回巨大的损失,修改也越容易。所以,软件测试在软件开发过程中无疑是至关重要的。1.2国内软件测试的现状及前景现状:随着软件产业的发展,竞争变得越来也激烈,市场对于软件产品的质量要求逐渐增强。所以,软件测试在软件项目实施过程中的重要性日益突出。国家信息产业部发布的最新报告显示,我国目
23、前软件人才缺口高达40万。即使按照软件开发工程师与测试工程师1:1的岗位比例计算,我国对于软件测试工程师的需求有数十万之众,而目前,我国软件开发工程师与测试工程师岗位比例为6:1,远远低于国际水平。很多小规模的软件企业,都是开发人员兼职做测试。而且,最主要的是软件公司的对于软件测试的重视程度不够,认为一个软件只有开发是最重要的,测试并不一定需要专业的人员去做。结果,后期需要软件修补花费的费用太高,以至于远远超过所能够允许的范围,发展前景惨淡。从总体上说,我国的软件行业发展还很不成熟,软件测试更是处于弱势地位。前景:..随着人们对软件需求的提高,软件产品的质量控制与
24、质量管理正逐渐成为软件企业生存与发展的核心。软件产品在发布前所需要的质量控制、测试和文档等工作,必须依靠拥有熟练技术的专业软件人才来完成。软件测试工程师就是这样的一个企业重头角色。软件产业的发展,市场对软件质量的不断提高,软件测试不断被重视。业内人士分析,该职位的需求主要集中在沿海发达城市,其中北京和上海的需求分量分别占去33%和29%。民企需求量最大,占19%,外商独资欧美类企业需求排列第二,占15%。软件测试的必要性已经完全为业内决策人士所接受。因为软件工业已经发展到与其他主要工业相当的规模。软件测试具有“地位高”,“待遇高”的双高地位称号,前景光明;而且就业门槛
25、低,人才需求量大,可以经过短期职业培训而进入这个行业。可以说,软件测试人员的就业竞争压力明显小于其他职业。而且,刚入行的软件测试人员,起步的月薪就在3000-5000左右,远高于同龄人2000元的薪资水品,随着工作经验的丰富以及能力的提升,薪水将一路上涨。与其他IT职位相比,软件测试人员最大的优势就是发展方向太多了。由于工作的特殊性,测试人员不但需要对软件的质量进行检测,而且对于软件项目的立项、管理、售前、售后等领域都要涉及。在此过程中,测试人员不仅提升了专业的软件测试技能,还能接触到各行各业,从而为自己的多元化发展奠定了基础。如果把软件开发领域比作“男子单打”,那
26、么,软件测试领域就是“混合双打”。由于工作的特殊性,软件测试人员更要具有认真、耐心、细致、敏感等个性元素,而这在一定程度上与女性的个性气质相吻合。据了解,很多IT企业中软件测试人员的比例更趋向男女平衡,甚至出现女性员工成主流的情况。可以说,软件测试这一职业将会成为近年来最火热的职业。..第二章软件测试概述2.1软件测试的定义和实质2.1.1软件测试的定义GrenfordJ.Myers曾对软件测试的目的提出过以下观点:(1)测试是为了发现程序中的错误而执行程序的过程;(2)好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;(3)成功的测试是发现了至今
27、为止尚未发现的错误的测试。然而,这种观点指出测试是以查找错误为中心,而不是为了演示软件的正确功能.但是只从字面意思理解,可能会产生误导,认为发现错误是软件测试的唯一目的,查找不出错误的测试就是没有价值的测试,实际上并非如此!(1)测试并不仅仅是为了找出错误.通过分析错误产生的原因和错误的发生趋势,可以帮助项目管理者发现当前软件开发过程中的缺陷,以便及时改进;(2)这种分析也能帮助测试人员设计出有针对性的测试方法,改善测试的效率和有效性;(3)没有发现错误的测试也是有价值的,完整的测试是评定软件质量的一种方法图图2.1.12.1.1软件测试的类型图软件测试的类型图2.1
28、.2软件测试的实质软件测试主要工作内容是验证(verification)和确认(validation),下面分别给出其概念:验证(verification)是保证软件正确地实现了一些特定功能的一系列活动,即保证软件做了你所期望的事情。(Dotherightthing)..1.确定软件生存周期中的一个给定阶段的产品是否达到前阶段确立的需求的过程;2.程序正确性的形式证明,即采用形式理论证明程序符号设一计规约规定的过程;3.评市、审查、测试、检查、审计等各类活动,或对某些项处理、服务或文件等是否和规定的需求相一致进行判断和提出报告。确认(validation)是一系列的
29、活动和过程,目的是想证实在一个给定的外部环境中软件的逻辑正确性。即保证软件以正确的方式来做了这个事件(Doitright)软件测试是软件开发过程的重要组成部分,是用来确认一个程序的品质或性能是否符合开发之前所提出的一些要求。软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码的最终复审,是软件质量保证的关键步骤。软件测试是为了发现错误而执行程序的过程。软件测试在软件生存期中横跨两个阶段:通常在编写出每一个模块之后就对它做必要的测试(称为单元测试)。编码和单元测试属于软件生存期中的同一个阶段。在结束这个阶段后对软件系统还要进行各种综合测试,这是软件生存期的另一个独立
30、阶段,即测试阶段。图图2.1.22.1.2软件测试生命周期图软件测试生命周期图2.2软件测试的目的与原则2.2.1软件测试的目的(1)确认软件的质量,其一方面是确认软件做了你所期望的事情,另一方面是确认软件以正确的方式来做了这个事件。..(2)提供信息,比如提供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。(3)软件测试不仅是在测试软件产品的本身,而且还包括软件开发的过程。如果一个软件产品开发完成之后发现了很多问题,这说明此软件开发过程很可能是有缺陷的。因此软件测试的第三个目的是保证整个软件开发过程是高质量的。软件质量是由几个方面来衡量的:一、在
32、角度出发会派生出两种不同的测试原则,从用户的角度出发,就是希望通过软件测试能充分暴露软件中存在的问题和缺陷,从而考虑是否可以接受该产品,从开发者的角度出发,就是希望测试能表明软件产品不存在错误,已经正确地实现了用户的需求,确立人们对软件质量的信心。为了达到上述的原则,那么需要注意以下几点:..(1)应当把“尽早和不断的测试”作为开发者的座右铭(2)程序员应该避免检查自己的程序,测试工作应该由独立的专业的软件测试机构来完。(3)设计测试用例时应该考虑到合法的输入和不合法的输入以及各种边界条件,特殊情况要制造极端状态和意外状态,比如网络异常中断、电源断电等情况。(4)一定要
34、过程进行支撑的软件测试工具。业界已有的软件测试工具基本上都局限在测试执行阶段,只能支撑测试执行阶段的活动,而测试分析、测试设计、测试实现这三个前期阶段的活动缺乏有效的测试工具支撑,直接影响了软件测试的完整性和充分性,从而影响最终研发的软件质量。David.yuan这样说:企业使用了博为峰TP测试平台,整个软件测试过程的测试覆盖率提高到前所未有的高度和广度,可以极好的达成软件在安全性、健壮性、稳定性和功能、性能方面的要求,即使是没有很多年测试经验的管理和测试人员,通过TP测试平台就可以完成智能化地管理、设计、分析、执行整个测试过程,达到一流测试管理专家所做到的效果。
35、TestPlatForm简称TP,在业界首先将各种有效的缺陷分析模型引入到该软件平台中,包括ODC分析、Gompertz分析、Rayleigh分析、四象限分析、缺陷注入分析、DRE/DRM等工程方法,帮助管理者建立软件研发过程的质量基线、测试能力基线,并帮助管理者将项目实际缺陷、能力数据和基线数据进行对比分析,发现软件过程中的改进点,判断测试是否可以退出、软件是否可以发布,并对软件中残留缺陷数进行预测;TestPlatform简称TP,建立了测试分析和设计的理论框架和一整套工程方法,能够很好的支撑测试的辅助分析和设计;TestPlatform简称TP,建
37、构建测试与自动回归测试等工作。是具有脚本语言的、提供针对脚本完善的跟踪和调试功能的、支持IE测试和Windowsnative测试的自动化测试工具。TestCenter是一款功能强大测试管理工具,它可以帮助您:实现测试用例的过程管理,对测试需求过程、测试用例设计过程、业务组件设计实现过程等整个测试过程进行管理。实现测试用例的标准化即每个测试人员都能够理解并使用标准化后的测试用例,降低了测试用例对个人的依赖;提供测试用例复用,用例和脚本能够被复用,以保护测试人员的资产;提供可伸缩的测试执行框架,提供自动测试支持;提供测试数据管理,帮助用户同意管理测试数据,降低测试数据
38、和测试脚本之间的耦合度。TAR(TerminalAutoRunner)适用于VT100、VT220等标准的应用系统,支持命令行模式和窗口模式(使用Cursors编写的应用程序),支持自动录制脚本、所见即所得的资源和脚本编辑,稳定的自动同步功能。是目前国内最好的银行业务测试工具.TestDirector是全球最大的软件测试工具提供商MercuryInteractive公司生产的企业级测试管理工具,也是业界第一个基于Web的测试管理系统,它可以在您公司内部或外部进行全球范围内测试的管理。通过在一个整体的应用系统中集成了测试管理的各个部分,包括需求管理,测试计划
39、,测试执行以及错误跟踪等功能,TestDirector极大地加速了测试过程。..第三章静态测试3.1静态测试简介静态方法是指不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性。对需求规格说明书、软件设计说明书、源程序做结构分析、流程图分析、符号执行来找错。静态方法通过程序静态特性的分析,找出欠缺和可疑之处,例如不匹配的参数、不适当的循环嵌套和分支嵌套、不允许的递归、未使用过的变量、空指针的引用和可疑的计算等。静态测试结果可用于进一步的查错,并为测试用例选取提供指导。静态测试包括代码检查、静态结构分析、代码质量度量等。它可以由人
41、积累。代码检查应在编译和动态测试之前进行,在检查前,应准备好需求描述文档、程序设计文档、程序的源代码清单、代码编码标准和代码缺陷检查表等。静态测试具有的发现缺陷早、降低返工成本、覆盖重点和发现缺陷的概率高的优点以及耗时长、不能测试依赖和技术能力要求高的缺点。3.2静态测试学术解释“静态测试”在学术文献中的解释:1、静态测试是指无须执行被测代码,而是借助专用的软件测试工具评审软件文档或程序,度量程序静态复杂度,检查软件是否符合编程标准,借以发现编写的程序的不足之处,减少错误出现的概率;2、静态测试是指测试不运行的部分:只是检查和审阅,如规范测试、软件模型测试、文档测试等。
42、动态测试是通常意义上的测试,也就是运行和使用软件;3、通过评审文档、阅读代码等方式测试软件称为静态测试,通过运行程序测试软件称为动态测试。在动态测试中,通常使用白盒测试和黑盒测试从不同的角度设计测试用例,查找软件代码中的错误;4、静态测试是指不用执行程序的测试,它主要采取方案代码走查、技术评审、代码审查的方法对软件产品进行测试。结构分析:..静态结构分析主要是以图形的方式表现程序的内部结构,例如函数调用关系图、函数内部控制流图。其中,函数调用关系图以直观的图形方式描述一个应用程序中各个函数的调用和被调用关系;控制流图显示一个函数的逻辑结构,它由许多节点组成,一个节点代
43、表一条语句或数条语句,连接结点的叫边,边表示节点间的控制流向。检查项:代码风格和规则审核;程序设计和结构的审核;业务逻辑的审核;走查、审查与技术复审手册。3.3静态测试编码规范一个项目或者一个企业,如果要下决心实施软件质量,实施软件工程,第一步要做的就是软件编码规范。编码规范是程序编写过程中必须遵循的规则,一般会详细规定代码的语法规则、语法格式等。企业实施怎样的编码规范,取决于很多个因素:l编程采用的语言,例如C、C+、JAVA、ADA等。项目的规范化程度。目前现成的C/C+编码规范有很多,例如前几年网络上比较流行的华为公司编程规范、摩托罗拉C+编程规范等。但项
44、目不能完全照搬,应该根据自己所处的阶段,定制属于自己的规范,否则的话,会让程序员无所适从,严重打击程序员的积极性。不同的行业对软件的可靠性有不同的要求,例如航空/航天的嵌入式软件对代码的要求很高,而传统的windows平台应用软件则相对要宽松。在嵌入式软件中,尤其是汽车行业,国际上目前流行的C语言编程规则为MISRA-C:2004,其中包括141条规则,其中121条是强制(Required)遵守的,20条是建议(Advisory)遵守的。有了统一的规范后,测试工程师或者程序员自身,就可以实施编码规范检查了。要真正把编码规范贯彻下去,单单靠测试员程序员的热情,
45、很难坚持下去,所以笔者建议借助于一些专业的工具来实施。在C/C+语言的编程规则检查方面,比较专业的工具有C+Test、LINT工具、KlocWork(Insight)/QAC/QAC+等,这些工具通常可以和比较流行的开发工具集成在一起,程序员在编码过程中,在编译代码的同时即同时完成了编程规则的检查。3.4静态测试质量度量有了严格的编程规范,只能算是万里长征迈出了第一步。要提高软件的可重用性,以及软件的可维护性,还需要进一步的努力,即静态质量度量。静态质量度量所依据的标准是ISO9126。在该标准中,软件的质量用以下几个方面来衡量,即功能性(Functionality
47、代码中的路径越多;路径越多,意味着要去做测试,需要写更多的测试用例。输入/输出的个数同样的道理。在具体的实践中,专门的质量度量工具是必要的。没有工具的支持,这一步很难只靠人工完成。在这个阶段,比较专业的工具有Testbed、Logiscope等。..图图3.43.4静态测试质量度量图静态测试质量度量图3.5静态测试错误检测在传统意义上认为,错误检测应该是动态的系统测试的范围。但在bug的成本上分析,有以下公认的结论。bug发现的越晚,修正的成本就越高,测试阶段修正bug的成本是编码阶段的约4倍的关系。为了减少成本,bug被发现的越早越好。在编程阶
48、段,静态的分析代码就能找到代码的bug,是很多人的梦想。这个梦想在21世纪初变成了现实。以PolySpacee、Klocwork、Coverity为代表的静态分析软件,实现了只要静态分析代码,就可以发现代码的bug,例如数组越界、除数为0、缓冲区溢出等,虽然还不是特别完美。微软在其最新的开发工具VisualStudio2005的teamsystemediton中集成了安全工具PREFix。PREFix原来就是著名的静态分析工具,后被微软收购过来。从微软的倾向看发展走势,类似的静态工具未来会成为市场的主流。..图图3.53.5静态测试缺陷成本图静态