作者:胖胖磊
小編:吃不飽
之前我們有文章介紹過CANoe中自帶的自動化測試功能-Test Module使用的方法,相信各位工程師們已經(jīng)熟練應用了。但是對Test Units,可能有些工程師只是在CANoe的界面中見過,沒有實際使用過。Test Units是需要與Vector旗下的另一款軟件vTESTstudio聯(lián)合使用,進行自動化測試。
vTESTstudio介紹
vTESTstudio是Vector公司專為ECU自動化測試而研發(fā)的測試用例編寫軟件,可用于從模型測試到系統(tǒng)確認的所有開發(fā)階段。它集成了多種用例編輯方法,能有效提高測試人員對測試設計的效率、具有可復用性等優(yōu)點。
vTESTstudio軟件在今年4月份,更新到vTESTstudio 7.0的版本,相比于之前版本,最大的新特性便是——Python File。它支持Python作為測試編程語言,Python File中包含集成編輯器,提供代碼的完整功能、語法的檢查等功能,具有調(diào)用 CAPL的功能,并且Python 接口函數(shù)(測試序列、測試用例、測試函數(shù)和函數(shù))可以在Test Table、Sequence Diagram和State Diagram中使用。
圖 1 集成了多種用例編輯方法除了新增加的Python File的功能,還有許多的新特性,在這里也為各位工程師一一列舉:
1.vCDL文件的使用:(1)vCDL文件可以直接在vTESTstudio工程中引用,無需從CANoe(4SW)配置導入系統(tǒng)環(huán)境;(2)vCDL支持對分布式對象的訪問。 圖 2 vCDL文件的使用2. 可以為Sequence Diagram和State Diagram激活ID,便于更好的管理測試用例。 圖 3 AssignDiagramIDs3.可以配合最新版的CANoe/CANoe4SW 16使用。(1)離線模式:測試單元和測試模塊可以進行離線分析; 圖 4 OfflineMode(2)vTESTstudio中對測試用例描述可以在CANoe的測試界面中查看到。 圖 5 查看測試用例描述4.對生成的測試報告做出了更新。(1)增加用于檢查開始/結(jié)束事件和檢查統(tǒng)計信息的過濾器。 圖 6 新過濾器(2)增加了測試用例的查詢方式。 圖 7 查詢測試用例
vTESTstudio的優(yōu)點
簡化設計用例
集成了多種用例編輯方法(列表式、圖表式、編程語言,適合不同水平和偏好…)
復用性
將測試邏輯、用例、參數(shù)分離,所有的文件都可以在版本變化后復用
圖形化的編輯方法使得測試的邏輯以及SUT的期望行為更加清晰
參數(shù)化
集成測試參數(shù)、結(jié)構(gòu)體以及仿真曲線
高測試覆蓋度(分類樹)
支持全產(chǎn)品周期測試
全局需求追蹤(從需求到報告)
自動生成可配置化的測試報告
圖 8 vTESTstudio視圖
自動化測試流程
vTESTstudio作為編輯測試用例的軟件,在vTESTstudio中編輯好我們需要的Test Case后需要編譯生成.vtuexe文件,然后加載到CANoe中的Test Units去執(zhí)行,進行完自動化測試后,還可以在CANoe中生成測試報告。
圖 9 自動化測試流程下面就讓我?guī)ьI大家把每一種編輯方式都學習一下!
Method 1 Python File
Python File就是用Python語言進行測試用例的編輯,這也是vTESTstudio 7.0獨有的一種編寫方式,本次vTESTstudio的更新,主要也是增加了Python File這個功能。增加了一種編輯方式,讓工程師們多一種選擇。圖 10 Python編輯區(qū)域大家肯定注意到了使用Pyton File也是需要引用組件接口的:
vector.canoe:包含一般部分Python API。
vector.canoe.tfs: 包含測試功能集Python API。
vector.canoe.measuremen:獲取測量的信息。
使用Python File創(chuàng)建Function
圖 11 使用Python File制作Function
圖12 使用Test Table調(diào)用Python Function
圖 13 Python編輯測試用例把測試用例導入到Test Table才可以執(zhí)行哦!
圖 14 Python測試用例導入Test Table
Method 2 Test Table
Test Table 是我們常見的也是大多數(shù)工程師正在使用的一種編輯方式,他的好處在于對于初學者很友好,上手比較簡單。
圖 15 Test Table 編輯界面
在Test Table中擁有許多指令,都是可以直接用。只需要按照要求在輸入?yún)^(qū)進行輸入,編譯成功后,在我們的CANoe中就可以進行自動化測試了。
圖 16 Test Commands 1圖 17?Test Commands 2
Method 3 Test Sequence Diagram
Test Sequence Diagram 顧名思義它是一種序列圖形式的編輯方式,他的好處在于對整個測試用例而言讓人看上去很直觀,但是操作上面就要稍微比Test Table要難了。
圖 18 Test Sequence Diagram編輯區(qū)在Test Sequence Diagram的編輯取中集成了許多的控件,這些控件就是我們搭建序列圖的關鍵,可以讓我們靈活使用。輸入?yún)^(qū)的操作和Test Table類似,也需要去使用Test Commands中的函數(shù)去進行輸入。
Test Sequence Diagram還擁有Path View,把我們序列圖方式寫出來的測試用例表格化,方便編寫人員的檢查工作。
圖 19 Test Sequence Diagram中Path View
Method 4 State Diagram
State Diagram狀態(tài)機的編輯方式,他對整個State Diagram中編寫的路徑,全部至少遍歷一次和轉(zhuǎn)移路徑的總數(shù)最少,盡可能避免已經(jīng)走過的路徑。
圖 20 State Diagram編輯區(qū)State Diagram也是有Path View界面。
圖 21State Diagram中Path View
State Diagram的路徑介紹
從Initial元素開始,先進入一個分支,進而進入更深層的分支;
走遍周圍所有的還沒有走過的遷移,直到a、b、c任意一個條件滿足:
到達Final元素;
到達了一個已經(jīng)進入過的State(即形成了循環(huán));
周圍已經(jīng)沒有未經(jīng)歷過的遷移(即形成了循環(huán));
在b和c條件下,路徑選擇將會以盡快到達Final元素為目標執(zhí)行。
圖 22 測試用例路徑輸入?yún)^(qū)的操作和Test Table類似,也需要去使用Test Commands中的函數(shù)去進行輸入。
Method 5 CAPL File
CAPL File就是用CANoe獨有的編程語言進行測試用例的編輯,使用這種方式就要求編輯人員對CAPL編程要精通,用純CAPL的形式編輯出來導入到Test Table中。
圖 23 CAPL編輯區(qū)域
圖 24CAPL編輯測試用例把測試用例導入到Test Table才可以執(zhí)行哦!
圖 25 CAPL測試用例導入Test Table
Method 6 C# File
C# File就是用C#進行測試用例的編輯,這就對C#精通的工程師比較友好,用C#的形式編輯出來導入到Test Table中。
圖 26 C#編輯區(qū)域
圖 27 C#編輯測試用例把測試用例導入到Test Table才可以執(zhí)行哦!
圖 28 C#測試用例導入Test Table
總 結(jié)
vTESTstudio作為一款編輯測試用例的軟件,具有高覆蓋度及復用性、變體及追蹤特性、編輯形式多樣、易于后期的維護等優(yōu)點。并且vTESTstudio與CANoe聯(lián)合使用,使得自動化測試更加的方便快捷。北匯信息作為Vector的合作伙伴,已為多家OEM/Tier1定制部件級功能測試系統(tǒng)(包括車身域控制器,及傳統(tǒng)分布式控制器功能測試開發(fā)),提供系統(tǒng)級及實車級測試驗證服務,期待交流分享和合作的機會。
-
測試
+關注
關注
8文章
5333瀏覽量
126766 -
CAN
+關注
關注
57文章
2757瀏覽量
463905
發(fā)布評論請先 登錄
相關推薦
評論