天下彩票

  • <tr id='GUadPQ'><strong id='GUadPQ'></strong><small id='GUadPQ'></small><button id='GUadPQ'></button><li id='GUadPQ'><noscript id='GUadPQ'><big id='GUadPQ'></big><dt id='GUadPQ'></dt></noscript></li></tr><ol id='GUadPQ'><option id='GUadPQ'><table id='GUadPQ'><blockquote id='GUadPQ'><tbody id='GUadPQ'></tbody></blockquote></table></option></ol><u id='GUadPQ'></u><kbd id='GUadPQ'><kbd id='GUadPQ'></kbd></kbd>

    <code id='GUadPQ'><strong id='GUadPQ'></strong></code>

    <fieldset id='GUadPQ'></fieldset>
          <span id='GUadPQ'></span>

              <ins id='GUadPQ'></ins>
              <acronym id='GUadPQ'><em id='GUadPQ'></em><td id='GUadPQ'><div id='GUadPQ'></div></td></acronym><address id='GUadPQ'><big id='GUadPQ'><big id='GUadPQ'></big><legend id='GUadPQ'></legend></big></address>

              <i id='GUadPQ'><div id='GUadPQ'><ins id='GUadPQ'></ins></div></i>
              <i id='GUadPQ'></i>
            1. <dl id='GUadPQ'></dl>
              1. <blockquote id='GUadPQ'><q id='GUadPQ'><noscript id='GUadPQ'></noscript><dt id='GUadPQ'></dt></q></blockquote><noframes id='GUadPQ'><i id='GUadPQ'></i>
                教育装备采购网
                第六◇届图书馆论坛580*60

                Polyspace——用于静态测试々运行时错误

                教育装备采购网 2016-01-27 16:07 围观556次

                  Polyspace——用于静态测【试运行时错误,主要进行非功能性测试

                  PolySpace的核心功能就是通过对源代码进行“语义分析”,采用“抽象执行”的方法,彻底的查找出软件在运行的时候可能出现的运行时错误,从而保障对软件高可靠性的要求。

                  PolySpace使用的是目前的语义分析技术,它依靠大量的数学定理提供 的规则分析软件的动态行为。语义分析技术没有使用简单的穷举法,却有能力在 更普通的模式下表达程序的状态,还能提供规则进行巧妙的处理。简单来说,语 义分析技术通过静态的方法,能够发现动态的运行时错误。

                  在以前的软硬件环境下,这个问题会非常复杂,很难去解决。随着计算机处 理能力的不断增强,在当前的硬件条件下,语义分析技◣术已经可以的实现。当应用运行时错误的检测时,语义分析技术会对所有危险的操作,进行一个详细的分析,在程序动态运行之前,早在编码阶段,就能够发现其中的运行时错误。

                  由于PolySpace的很多优势,因此,将PolySpace引入开发流程后,传统的 检查软件运行时错误的测试方法可以省略:

                  并且,PolySpace 可以使用在软件开发流程的各个阶段(除去规格说明阶段):

                  另外,PolySpace可以直观的看到软件运行时错误的原因和具体的位置→,便于修改程序:

                  采用PolySpace后,只需在源代码和软件测试中间增加一个“PolySpace检查”环节,就可以检查源程序的运行时错误,从而可以降低后面软件测试的任务,缩短测试周期,降低测试成本,大大的提高软件的可靠性和安全性。

                  采用语义分析的方法——确保分析情况无一遗漏

                  PolySpace采用的是语义分析的方法来分析源程序的,而不是采用测↙试用例 的方法来分析源程序,所以:

                  ? PolySpace分析所有输入端的各种组合方式

                  ? PolySpace分析所有运算符【的含义

                  ? PolySpace在程序中的任何地方都知道变量的取值范围

                  采用语义分析技术,实际上就是采用解析数学的方法来分析,以变量的当前有效使用区间和当前代码的危险区间为分析对象,通过对变量的有效区间和危险区间做抽」象的比较,从而判断当前代码是否包含错误。这种方法避免了测试用例无法穷举变量区间内所有数值的弊端,使分析结果包含所有可能的情况,不存在遗漏的问题。

                  分析源代码——不需要执行程序

                  PolySpace分析的是源程序,不需要用户执行代码,这使用户可以在开发阶段使用PolySpace对源代码进行检查,直接将错误定位到源程序,从而将软件的测试过程提前了,既能降低软件测试的成本,也便于程序员直接修改程序中的错误。

                  另外,采用源程序进行分析,用户不需要构建软件运行所需要的环境,同时也不需要构建测试程序,不需要插入任何的测试代码,这样可以准确、便捷、的完成测试功能。

                  分析的是运行时错误——保证程序不会被运行时错误所打断

                  PolySpace分析的是程序的①运行时错误。这些错误只有在程序执行的过程中 才会出现的。分析运行时错误可以避免程序崩溃带来的危险,可以保证程序顺利执行。目前只有PolySpace能在源代码阶段对运行时错误进行分析。

                  另外,剔除程序的运行时错误,可以保证基于功能的测试任务不会被运行时 错误所打断,从而保障基于功能★的测试可以顺利完成;大大的提高了软件的测试效率,缩短测试周期,降低测试成本。

                  与Simullink无缝连接

                  对于经常使用Simulink的人员来说,他们经常工作在模型层次,而不↑是代码层次。每当模型设计完毕后,就可以直接自动生成源代码,然后经过∮软件测试后就可以用于产品。这样的话,如果直接使用PolySpace检查源代码,对源代码进行修改后,虽然可以提高源代码的可靠性和安全性;但是,当下次再次生成源代码的时候,上次的检查结果就会被覆盖了,还需要重新检查。

                  为此,PolySpace提供了与Simulink的直接集成。这样,用户在检查完源代码后,可以直接将出现问题的代码定位到对应的Simulink模型上,用户此时不需要修改源代码,直接修改模型就可以了。通过这样的方法,可以保证用户的模型是没有运行时错误的,同时可以保证,用户的模型在生成代码后也是没有运行时错误的。从而为那些工作在 Simulink 模型层次的工程师提供了非常大的便利,可以生成没有运行时错误的模型,而且这些模型是可以重用的。

                  可以采用 MISRA-C规则对源代码进行规则检查

                  PolySpace可以采用MISRA-C规则对源代码的形式进行检查:例如,禁止使用逗号运算符等。采用MISRA-C规则对源程序进行检查,在PolySpace中是非常方便的,只需选中对应的选项,并且选中对应的MISRA规则就可以了,非常方便。

                  能够对C、C++、Ada语言进行运行时错误检查

                  目前,PolySpace支持对C、C++、Ada语言的运行时错误检查。并且对这些语言的运行时错误检查技术已经非常成熟了。

                  可以检查手写代码和自动生成代码

                  PolySpace不但可以检查手写代码,而且可以检查自动生成的代码。由于现在自动生成代码技术已经越来越成熟,大量的代码是自动生成的。由于自动生成的代码量非常大,因此,如果采用传统的代码审查将是难以实现的。而不审查,仅仅通过测试用例的方法,又难以保证代◣码的可靠性和安全性,因此,对于自动生成的代码处理起来非常棘手。PolySpace则可以检查自动生成的代码,从而可以保证自动生成的代码也是高可靠性和高安全性的。

                  不需要改变现有的软件开发流程

                  将PolySpace引入软件开发流程有◣两种形式:一是新的软件项目,二是正在开发的软件项目。幸好在任何一种情况下将PolySpace引入╳开发流程都不会产生任何的副作用,不会影响现在的开发流程,也不会因为引入PolySpace而延长软件开发周期,相反却能大大缩短软件开发周期,提高软件的可靠性和安全性。

                点击进入北京经纬恒润科技股份↘有限公司展台查看更多 来源:北京经纬恒润科技有限公司 我要投稿
                普教会专题840*100

                版权与免责▲声明:

                ① 凡本网注明"来源:教育装备采购网"的所有作品,版权均属于教育装备采购网,未经本网授权不得转载、摘编或利用其它方式使用。已获本网授权的作品,应在授权范围内使用,并注明"来源:教育装备采购网"。违者本网将追究相关法律责任。

                ② 本网凡注明"来源:XXX(非本网)"的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,且不承担此类作品侵权行为的直接责任及连带责任。如其々他媒体、网站或个人从本网下载使用,必须保留本网注明的"稿件来源",并自负版权等法律责任。

                ③ 如涉及作品内容、版权等问题,请在作品发表之日起两周内与本网联系,否则视为放弃相关权利。

                2022云展会300*245