本文目錄
- 軟件簡介
- 基本操作步驟
- 新建工作文件夾
- 創建工程
- 創建環境
- 生成測試用例
- 常見問題
- 額外筆記_汽車安全完整性等級(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】