网站首页 收藏本站 联系我们
  • 首页
  • 关于望驰
    • 关于我们
    • 技术优势
    • 企业文化
  • Parasoft
    • Virtualize
    • Jtest™
    • Insure++™
    • SOAtest™
    • C++test™
    • dotTest™
  • Cybellum
    • Cybellum
  • beSTORM
    • beSTORM
  • Synopsys
    • Seeker
    • AppCheck
    • Coverity
  • 主营产品
    • Fortify
    • Security Fortify
    • CheckMarx
    • Deepkeep
  • Micro Focus
    • UFT
    • ALM Octane
    • WebInspect
    • LoadRunner
    • UFT Pro
    • Mobile Center
    • Service Virtualization
    • Network Virtualization
  • 测试仪器
    • CxCodebashing
  • 项目案例
    • 汽车解决方案
    • 金融解决方案
    • 工业控制系统
    • 医疗
    • 航空航天
    • 安全实验室
  • 行业新闻
    • 企业新闻
    • 行业动态
  • 联系我们
项目案例
汽车解决方案
金融解决
工业控制系统
军工
航空航天
安全实验室
医疗
  • 热门资讯
  • • Checkmarx:安卓又一严重漏洞!威胁着10亿人的..
  • • Checkmarx测评|物联网设备正在泄露你多少隐私..
  • • SlavaBronfman的访谈–Cybellum
  • • MISRAC++和AUTOSARC++的合并:软件开发行业专..
  • • 面向服务架构(SOA)的汽车软件分析和设计..
  • • 世界智能网联汽车大会
汽车解决方案首页 -> 项目案例 -> 汽车解决方案 -> 正文
Tier1在C/C++test测试的案例
摘要: 一、客户需求 目前的音响导航第一事业部,在使用C/C++test之前,主要是通过Labview 模拟测试来查找代码的漏洞。这样导致后面的测试工作的展开会有很多的困难: 1.由于只能测试代码的一小部分,导致很难全面的进行测试。 2.没有很好的办法来衡量测试的程度,不知道测试是否进行的充分,对测试的 结果没有信心。 3.而且由于没有清晰的需求规格说明书,测试用例很难设计。从而加重了测试 人员与开发人员进行沟通的困难,导致工作量上升但是效率下降。 …
 

一、  客户需求

目前的音响导航第一事业部,在使用 C/C++test之前,主要是通过 Labview

模拟测试来查找代码的漏洞。这样导致后面的测试工作的展开会有很多的困难:

1.  由于只能测试代码的一小部分,导致很难全面的进行测试。

2.  没有很好的办法来衡量测试的程度,不知道测试是否进行的充分,对测试的

结果没有信心。

3.  而且由于没有清晰的需求规格说明书,测试用例很难设计。从而加重了测试

人员与开发人员进行沟通的困难,导致工作量上升但是效率下降。

4.  并且,对于特定程序段很难精准地进行测试,有很多的测试路径没有走到,

会有隐藏缺陷的后果。

5.  测试找到问题后,定位代码有困难,修改后可能隐藏有错误。

所以,为了提高代码的质量,快速有效地找到代码中的缺陷,减少测试的工

作量,Tier1打算引进一款先进的测试工具帮助他们走出目前的困局。这时,

Tier1经过前期对 Parasoft 的 C/C++test 产品的了解和试用,认为

C/C++test提供一个灵活并且自动化的测试平台,可以很好的解决目前的问题。 

其次Tier1为其产品更好的在全球市场销售,需要得到 TUV 德国莱茵颁

发的汽车电子电气功能安全标准 ISO26262 的认证。Parasoft 针对汽车电子电

气 ISO26262 有专门的认证套件,满足对于测试过程的各个阶段的要求。使用

Parasoft C/C++test 来实现ISO/DIS 26262 中第六章: 产品开发:软件级别

的特定部分。

二、  开发环境  

Keil ARM v4.22 和 v5.12

主要是嵌入式,前期会在 1-2 个项目上使用 C/C++test进行单元测试。代码行

10w级。

 

三.静态分析具体实施

  Parasoft C/C++test 静态分析提供三种技术手段来从不同的角度确保软件

代码的质量。

  规则规范检查:通过自动错误预防(AEP)理论,在代码开发阶段进行

快速检查,发现代码中违反事先指定的编码要求的部分。增强编码标准,

例如对不安全语言结构的检测。其中针对 ISO26262 标准规范要求的规则可以直接在工具中应用。

  数据流和控制分析:通过早期模拟代码的执行路径,尽早发现程序在执

行过程的运行时错误问题。

  度量指标统计分析:通过分析代码结构性上的指标,增强低复杂度的策

略。报告圈复杂度、基本复杂度以及额外的软件代码度量指标。

四.单元测试具体实施

在使用 C/C++test开展测试工作之初,他们在音响导航第一事业部挑选出 2

人组成测试小组。在客户从未进行过单元测试的情况下,Parasoft 的技术人员

针对客户的具体环境和代码结构进行了详细的工具使用培训。之后,通过

C/C++test 技术工程师的辅助,经过 2 天的时间,已经可以顺利的开展单元测

试的进程。相比不使用工具,对于嵌入式平台的测试,除非客户愿意自行开发测

试框架,否则单元测试根本无法实施。这样一来,就可以抛却测试中繁琐而耗费

时间的步骤,为客户节约了可观时间,从而快速地进入对代码逻辑进行测试的阶

段。

五、使用结果 & 客户评价

“使用 C/C++test 帮助我们更容易快速地设计测试用例,我们只需要做简

单的测试配置,直接运行就可以将结果清楚直观的显示在界面上。这样就可以把

更多的精力放在测试业务的逻辑上,而不是其他无关但是耗时的琐事上。并且

C/C++test 提供多种覆盖率来衡量测试的程度,我们心里就更有底了”,一位

使用 C/C++test进行单元测试的Tier1威员工说。  “之后我们在设计测试用例

时遇到了访问私有成员变量的问题,从提出问题到 Parasoft 的提出解决方案后

解决问题,仅仅用了一天时间”他又补充说道。

同时,Parasoft的方案还带来了一些额外的好处:

  整个方案学习成本非常低,不需要花费大量时间学习改变。

  开发人员长期使用后,自身能力大幅提升。

  整合并统一所有研发人员代码风格,代码不再出现“因人而废”现象。

  测试人员能够轻易获得测试历史数据。

Cybellum  Parasoft  bestorm  Defensics  Appcheck  Coverity  C/C++test
上一页 返回列表 下一页
 
关于我们      |       产品展示      |       解决方案      |       经典案例      |       培训中心      |        新闻资讯      |        试用申请      |        联系我们
  • 上海望驰安防科技有限公司

    地址:上海市浦东灵山路958号5号楼2楼

    手机:18049824972

    电话:021-50150593

    邮箱: anying.ao@ruitde.com

CopyRight 2016 www.ruitde.com All Rights Reserved     版权所有:上海望驰安防科技有限公司   沪ICP备16034184号