本文目录
软件简介
基本操作步骤
新建工作文件夹
创建工程
创建环境
生成测试用例
常见问题
额外笔记_汽车安全完整性等级(ASIL,Automotive Safety Integrity Level)
一、工具(软件)简介
VectorCAST / C++™ 是单元测试工具,能够对基于 C 或 C++代码的项目进行单元测试或集成测试, 能够轻松地独立测试整个项目中任何子文件或子文件集。
VectorCAST / QA™是系统测试工具,能够对基于 C 和 C++代码的应用程序进行代码覆盖率分析。
VectorCAST / Analytics 工具用基于网页的仪表板方式来展示源代码的测试结果,使您能够方便的 查看每个子文件的测试数据及趋势,或者在多个子文件之间进行测试数据比较。
VectorCAST / Lint 是静态测试工具,基于 MISRA C(2012)/C++(2008)规范进行工程级别的代码静态检测,可自主删减规则。
——
VectorCAST™解决方案主要由以下几个模块组成:
VectorCAST/C++ & Ada, 对C/C++/Ada 程序的单元测试和集成测试环境的生成、编辑、构建、执行、覆盖率分析、复杂度分析和测试结果统计等等。
VectorCAST/Cover, 统计无论是单元测试、集成测试还是系统测试的覆盖率,并可以将不同次测试的结果综合到统一的报告中。
VectorCAST/MCDC, 统计MC/DC 覆盖率。
VectorCAST/Manage, 自动化的回归测试功能及项目的整体质量集中管理中心。
VectorCAST/Lint, 自动化代码静态分析模块。
VectorCAST/RSP, 用户宿主机和目标机的通讯,收集测试用例在目标机执行之后的测试结果和数据。嵌入式的测试必备模块。
VectorCAST/RGW, 用于集成需求管理系统,使用测试用例跟踪测试需求并导出数据。
VectorCAST Qualification Kits, 提供用于支持DO-178B, IEC61508, ISO26262和EN50128等行业所需的验证材料套件。
————————————————
版权声明:本文为CSDN博主「Angel19810427」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u012826415/article/details/16818851
二、基本操作步骤
1️⃣远程连接服务器,打开VectorCAST
开始菜单 > All Programs > Windows附件 > 远程桌面连接 > 输入172.**.30.114【用户名:C-H-\administrator 密码:C-1-】
2. 开始菜单 > All Programs > VectorCAST文件夹 > VectorCAST
2️⃣使用VectorCAST:Directory => Project => Environment => TestCase
设置工作文件夹File > Set Working Directory command【文件夹命名规则:D:\VectorCAST\……——①个人:user\XXX;②模块:module\Wave】
Project
新建:File > New > VectorCAST Project > Empty Project > 编写工程名 & 选择编辑器(C/C++ > VectorCAST MinGW > C)> Create
配置:右击编译器节点——VectorCAST_MinGW_C > open Configuration > Manage – Source Directories 选择源代码目录 > Manage – Coverage type 选择覆盖类型(Statement+Branch若无该项请改:菜单栏>Tools>Industry Mode>default)——记得保存!(工程文件夹里会增加文件)
生成Environment:项目树节点 – 右击Group > Create Unit Test Environment > Interactive(交互式)>②填写 Environment Name – ↓ ↓↓③Testing Method↓ ↓↓- ④Bulid Options 选择关联程序目录 – ⑤选择被测源文件 –⑥选择被测单元和需打桩函数 – Build
先导入需求后建测试用例!!!
作者:亦吾所知
链接:https://zhuanlan.zhihu.com/p/144518708
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Test Case
生成:项目树 – 右击函数名 > Insert Test Case(生成单元测试用例) 或Insert Basis Path Test Cases(基本路径测试用例)> 填写 Input & Expected Values
执行:右击Test Case > Excute
查看报告结果:Test > View > Full Report File >Print… > 打印到Microsoft Print to PDF > 输出PDF【单体测试合格标准——测试Case全部通过(绿色)+ 分支覆盖率100%。】
Testing Method
a) 传统的单元测试—— VectorCAST解析被测C/C++源文件来创建测试套件。此外,任何没有实际定义只有声明的外部函数都将被踢掉。
b) 对象文件测试——与传统的单元测试方法相同,只是编译现有的对象文件而不是源文件来创建测试套件。当您选择对象文件测试时,需要手动选择被测的目标文件用于 Link Option
c) 库接口测试—— VectorCAST通过解析C/C++头文件的函数声明来构建测试环境。不会创建存根。测试工具将链接到包含测试下的函数和方法的实现的库归档文件。(需要手动链接到提供方法和函数实现的库。)
d) 测试驱动的开发—— VectorCAST通过解析C/C++头文件的函数声明来构建测试环境,并为正在测试的函数创建桩函数。随着代码的实现,可以将桩函数替换为实际函数,这样可以在顶层架构设计完成后,并行开始代码和测试用例的开发。
三、常见错误:
a) 生成桩函数错误:提示无法生成某函数的桩函数。原因是VectroCAST没有找到该函数的声明原型。解决方法是在程序中加入下面该函数的声明原型。
extern void 某函数(uint8_t XXXX,uint8_t xxxx);
b) 再次打开工程后出现大量错误:这个是VectorCAST的Bug。解决方法是执行Environment > Rebuild environment
c) 测试报告的内容不完全:
生成测试报告的时候,要把左边的选择焦点移到测试Case处,而不是放在测试Case下面的函数名上。
四、额外笔记
汽车安全完整性等级(ASIL,Automotive Safety Integrity Level)是指ISO 26262中某个汽车系统项目(例如子系统)定义的风险分类方案。
ASIL表示降低风险所需的严格程度(例如,测试技术、所需的文档类型等),其中ASIL D表示最高风险,ASIL A表示最低风险。
车规级ASIL根据安全目标和功能安全要求的定义确定。【选B】