Menu
我公司是结合网络技术为家电维修行业服务最早,维修技术最专业的家电维修公司。公司总部设立在北京,各个省份均有我们的维修网点,从事20多年家电行业,值得您的信赖!

当前位置主页 > 故障 >

Polyspace——用于静态测试运转时差池厉重实行非

日期:2019-11-06 15:22 来源: 功能性错误

  

Polyspace——用于静态测试运转时差池厉重实行非

Polyspace——用于静态测试运转时差池厉重实行非

Polyspace——用于静态测试运转时差池厉重实行非

  由于PolySpace的很多优势,因此,将PolySpace引入开发流程后,传统的 检查软件运行时错误的测试方法完全可以省略: 另外,PolySpace可以直观的看到软件运行时错误的原因和具体的位置,便于修改程序: PolySpace可以采用MISRA-C规则对源代码的形式进行检查:例如,禁止使用逗号运算符等。采用MISRA-C规则对源程序进行检查,在PolySpace中是非常方便的,只需选中对应的选项,并且选中对应的MISRA规则就可以了,非常方便。 另外,剔除程序的运行时错误,可以保证基于功能的测试任务不会被运行时 错误所打断,从而保障基于功能的测试可以顺利完成;大大的提高了软件的测试效率,缩短测试周期,降低测试成本。 PolySpace不但可以检查手写代码,而且可以检查自动生成的代码。由于现在自动生成代码技术已经越来越成熟,大量的代码是自动生成的。由于自动生成的代码量非常大,因此,如果采用传统的代码审查将是难以实现的。而不审查,仅仅通过测试用例的方法,又难以保证代码的可靠性和安全性,因此,对于自动生成的代码处理起来非常棘手。PolySpace则可以检查自动生成的代码,从而可以保证自动生成的代码也是高可靠性和高安全性的。 在以前的软硬件环境下,这个问题会非常复杂,很难去解决。随着计算机处 理能力的不断增强,在当前的硬件条件下,语义分析技术已经完全可以高效的实现。当应用运行时错误的检测时,语义分析技术会对所有危险的操作,进行一个详细的分析,在程序动态运行之前,在编码阶段,就能够发现其中的运行时错误。 PolySpace的核心功能就是通过对源代码进行“语义分析”,采用“抽象执行”的方法,彻底的查找出软件在运行的时候可能出现的运行时错误,从而保障对软件高可靠性的要求。 采用语义分析技术,实际上就是采用解析数学的方法来分析,以变量的当前有效使用区间和当前代码的危险区间为分析对象,通过对变量的有效区间和危险区间做抽象的比较,从而判断当前代码是否包含错误。这种方法避免了测试用例无法穷举变量区间内所有数值的弊端,使分析结果包含所有可能的情况,不存在遗漏的问题。 采用PolySpace后,只需在源代码和软件测试中间增加一个“PolySpace检查”环节,就可以检查源程序的运行时错误,从而可以降低后面软件测试的任务,缩短测试周期,降低测试成本,大大的提高软件的可靠性和安全性。 为此,PolySpace提供了与Simulink的直接集成。这样,用户在检查完源代码后,可以直接将出现问题的代码定位到对应的Simulink模型上,用户此时不需要修改源代码,直接修改模型就可以了。通过这样的方法,可以保证用户的模型是没有运行时错误的,同时可以保证,用户的模型在生成代码后也是没有运行时错误的。从而为那些工作在 Simulink 模型层次的工程师提供了非常大的便利,可以生成没有运行时错误的模型,而且这些模型是可以重用的。 将PolySpace引入软件开发流程有两种形式:一是新的软件项目,二是正在开发的软件项目。幸好在任何一种情况下将PolySpace引入开发流程都不会产生任何的副作用,不会影响现在的开发流程,也不会因为引入PolySpace而延长软件开发周期,相反却能大大缩短软件开发周期,提高软件的可靠性和安全性。 PolySpace分析的是程序的运行时错误。这些错误只有在程序执行的过程中 才会出现的。分析运行时错误可以避免程序崩溃带来的危险,可以保证程序顺利执行。目前只有PolySpace能在源代码阶段对运行时错误进行分析。 PolySpace采用的是语义分析的方法来分析源程序的,而不是采用测试用例 的方法来分析源程序,所以: 并且,PolySpace 可以使用在软件开发流程的各个阶段(除去规格说明阶段): 另外,采用源程序进行分析,用户不需要构建软件运行所需要的环境,同时也不需要构建测试程序,不需要插入任何的测试代码,这样可以准确、便捷、高效的完成测试功能。 PolySpace分析的是源程序,不需要用户执行代码,这使用户可以在开发阶段使用PolySpace对源代码进行检查,直接将错误定位到源程序,从而将软件的测试过程提前了,既能降低软件测试的成本,也便于程序员直接修改程序中的错误。 PolySpace使用的是语义分析技术,它依靠大量的数学定理提供 的规则分析软件的动态行为。语义分析技术没有使用简单的穷举法,却有能力在 更普通的模式下表达程序的状态,还能提供规则进行巧妙的处理。简单来说,语 义分析技术通过静态的方法,正在大学平面安排都必要进修什么。能够发现动态的运行时错误。 分析的是运行时错误保证程序不会被运行时错误所打断 目前,PolySpace支持对C、C++、Ada语言的运行时错误检查。并且对这些语言的运行时错误检查技术已经非常成熟了。 对于经常使用Simulink的人员来说,他们经常工作在模型层次,而不是代码层次。每当模型设计完毕后,就可以直接自动生成源代码,然后经过软件测试后就可以用于产品。这样的话,如果直接使用PolySpace检查源代码,对源代码进行修改后,虽然可以提高源代码的可靠性和安全性;但是,当下次再次生成源代码的时候,上次的检查结果就会被覆盖了,还需要重新检查。

功能性错误

上一篇:

下一篇: