欢迎交流测试经验

PolySpace

上一篇 / 下一篇  2007-05-24 14:22:43 / 个人分类:技术文摘

查看( 253 ) / 评论( 1 )
PolySpaceTestAge 中国软件测试时代%?#q2Nt+j*L@-]3v
——基于源程序的运行时错误的静态检查工具

$?2f9icCW&^0PolySpace软件是由PolySpace公司开发的一个程序运行时错误的静态检查工具。该软件采用基于源代码静态检查的方法来检查程序在运行时可能出现的错误,可以大幅度的提高软件的可靠性,降低测试成本,缩短软件的开发周期。TestAge 中国软件测试时代 IMH:c4x(Z8|q

一. 什么是运行时错误的静态检查?TestAge 中国软件测试时代KFo4@m)Y.g+F

运行时错误的静态检查是指,不需要运行程序,只根据源代码,就能检查软件将来在运行时可能出现的错误的技术

fT){OF"Hd2xg0二. 运行时错误静态检查的优点
  • 编码阶段就可以剔除大量的错误,避免了程序必须编译后才能进行测试的缺点;
  • 源代码阶段剔除大量的运行时错误,可以大大缩减测试的工作量,降低测试成本,缩短软件开发周期;
  • 可以删除源程序中为了提高可靠性而额外添加的入口参数检查部分,降低了编码工作量,提高了程序的执行效率,在嵌入式系统中尤为有用;
  • 能够在编码阶段对软件进行大量的“测试”,将测试提前到了编码过程中,而不仅仅是编码完毕后再测试,对提高软件可靠性非常有利

M!W:mm0^ Ib0三.PolySpace特点
  • 采用高级形式化分析技术,对源代码进行形式化验证,确保分析情况无一遗漏;
  • 不需要测试用例,不需要使用仪器,更不需要运行程序,就能对源程序进行运行时错误检查,降低了查错的成本;
  • 可以检测出哪些代码是安全的,哪些可能有问题,哪些一定有问题,哪些无法被执行到的,可以直接定位到源程序,便于修改错误;
  • 与Simulink®的RTW®、Targetlink®和BEACON®无缝连接,为用户提供了非常便利的使用途径;
  • 满足MISRA、DO-178B、IEC-61508、FDA等认证标准,为用户编写安全、可靠的程序提供了保证;
  • 能够对C、C++、Ada语言进行检查;
  • 既支持对手写代码的检查,也支持对自动代码生成工具生成的代码进行检查;
四.PolySpace检查结果的着色表示方法

*r}@&P6KgQ0五.PolySpace检查结果的分析

*DT;t,N@q,U }0六.PolySpace与Simulink®的集成
'M}HQZ0TestAge 中国软件测试时代$?.g_]+mi.o
  1、PolySpace支持的代码生成工具
  • ADI: BEACON®for Simulink version V7_30-1
  • dSPACE: TargetLink®2.0.7
  • MathWorks: RTW®Embedded coder 4.2.1
TestAge 中国软件测试时代!hn+Xf&J5^

PolySpace可以与Simulink进行无缝集成。PolySpace直接在模型级别进行分析(信号、入口、校正、查表等),并且直接用分析的结果对生成的源代码进行分析。只需双击Simulink中的PolySpace框图,可以完成所有的分析、检查等操作,并且可以将会出现运行时错误的地方标识出来。TestAge 中国软件测试时代3Yp!V6l:q

  2. PolySpace与Simulink®集成的工作流程
$[ N`4N I0
1)用Simulink®生成代码
2)使用PolySpace来自动分析代码
3)查看PolySpace分析的结果
4)标出颜色的部分是存在问题的地方
5)点击超连接,可以返回到模型中,直接修改模型
  
  3. 主要优势
  • 在模型层次上查找bug和引起功能错误的原因,加速了调试效率;
  • 缩短了代码阶段才检查运行时错误的工作量;
  • 快速检查手写代码编写的S函数、客户模块和状态流中的错误;
  • 可以用来确认最终发布的软件是没有错误的,具有高可靠性;
  • 帮助模型设计者生成可重用的模型;
七.PolySpace检查的运行时错误种类
语言版本
C
C++
Ada
未初始化数据的读访问
数组的越界访问
上溢/下溢
危险的类型转换
非法使用指针
被0除或其它的数学错误
访问为Null的this指针
 
 
面向对象编程的动态错误
 
 
与异常处理关联的错误
 
 
共享数据访问冲突
 
死代码
其他(与安全有关的项目)
 

TAG:

aken的个人空间 aken 发布于2007-05-24 15:38:48

我来说两句

(可选)

我的栏目

日历

« 2008-08-15  
     12
3456789
10111213141516
17181920212223
24252627282930
31      

数据统计

  • 访问量: 1234
  • 日志数: 9
  • 建立时间: 2007-05-15
  • 更新时间: 2007-06-05

RSS订阅

Open Toolbar