作者 | 昱佳
小編 | 不吃豬頭肉
前言
隨著汽車電子技術(shù)的不斷發(fā)展和普及,汽車電子系統(tǒng)的復雜度不斷增加,對汽車電子系統(tǒng)的測試要求也越來越高,傳統(tǒng)的測試方法已經(jīng)無法滿足對系統(tǒng)功能和性能的全面測試需求。TPT作為一種靈活、高效的測試工具,能夠幫助測試工程師快速編寫滿足各類需求的測試用例,有效提高測試效率和覆蓋率。
為了滿足汽車行業(yè)日益增加的測試需求,走在測試技術(shù)前沿,TPT也在不斷成長,以適應(yīng)新的測試需求和挑戰(zhàn)。更新亮點
2.1形式化需求
在TPT 19時我們已經(jīng)體驗到了形式化需求的高度自動化,在此基礎(chǔ)上TPT 20支持MiL、SiL、PiL、HiL階段所有平臺使用形式化需求自動生成測試用例(例如:MATLAB、AUTOSAR、Lauterbach、CANoe、VeriStand等),這一優(yōu)化無疑會對我們的測試質(zhì)量和效率的提升有很大幫助。
另外,形式化需求的編寫也得到了優(yōu)化,提供了一些新的步驟以便于滿足各類需求。
例如:當需要的測試結(jié)果是檢測兩個信號是否相等時,新增的‘Shall Signal Compare’步驟就可直接滿足這一需求。
圖 1 新增步驟示例
形式化需求還新增一種生成未通過測試用例功能(滿足功能需求輸入,未得到期望結(jié)果),可以通過在TASMO自動生成測試用例界面選擇開啟該功能。
圖 2 選擇生成Failed測試用例
選擇生成Failed測試用例后,生成界面會顯示哪些需求存在未通過的情況,通過分析模型/代碼,這樣就可以快速發(fā)現(xiàn)/定位問題啦。
圖 3 形式化需求自動生成用例界面(生成Failed測試用例示例)
2.2自動生成測試用例
除形式化需求自動生成測試用例有更新外,其他測試用例自動生成也做了優(yōu)化改進。
以‘Generate Test Cases from Equivalence Classes’為例:
我們現(xiàn)在可以選用等價類單個隨機值做接口測試,在用邊界值方法設(shè)計測試用例的時候選取三點邊界值,從映射中檢索量化數(shù)據(jù)。
圖 4 選擇測試方式圖 5 選擇映射
在TPT 20中,我們不再需要通過復雜的配置組合去實現(xiàn)多類測試用例的生成,而是可以通過簡單選擇直接生成所需測試用例。
另外TPT 20還針對組合方式和生成用例形式提供了多個類型來滿足我們測試的多種工況。
組合方式
Single value:單個信號的單個代表為一組。Pair two values:選擇一對信號為一組。Combine values:選擇所需信號的代表值為一組。
步驟列表
Embedded:將所有組合作為嵌入信號步驟的示例點嵌入一個步驟列表。Merged:將組合合并到一個用例中,在各組合間設(shè)置等待時間。Separated:為每個組合單獨生成一個測試用例。圖 6 信號組合和用例形式選擇新增的'Generate Test Cases for Interface Testing' 功能是同時支持'Generate Test Cases from Equivalence Classes'和'Generate Test Cases from Value Ranges'的功能生成測試用例,可以更好的實現(xiàn)功能安全要求的接口測試和邊界值測試。圖 7 Generate Test Cases for Interface Testing
2.3AUTOSAR
現(xiàn)在AUTOSAR新增TPT Coverage(TASMO)覆蓋度統(tǒng)計方式,該統(tǒng)計方式可以直接使用并查看代碼的SC、CC、DC、MC/DC覆蓋率,無需另外購買商用覆蓋度統(tǒng)計工具,避免繁瑣的配置過程,節(jié)約成本的同時提高測試效率。
圖 8 AUTOSAR覆蓋度設(shè)置自動生成完成后,執(zhí)行相應(yīng)測試用例,可以直觀的看到代碼結(jié)構(gòu)的覆蓋情況。
圖 9 代碼覆蓋度報告查看
同時,AUTOSAR還支持了TASMO自動生成測試用例,并且提供了新的覆蓋度標準‘Function coverage’,它滿足了功能安全集成測試階段的覆蓋度統(tǒng)計要求,以便測試人員更好地查看代碼中的函數(shù)是否執(zhí)行。
圖 10 Generate Test Cases for C/C++ or AUTOSAR
新功能
3.1項目元素共享
當一個項目有多個TPT工程時,可以通過在子項目中設(shè)置父項目,將父項目的聲明、命名數(shù)據(jù)類型、映射、函數(shù)和需求與多個子項目共享。圖 11 設(shè)置父項目為了提高效率,將一個模型的功能分給不同的人測試時,可以通過此方法共享測試元素,分別進行需求測試,當父項目更新時,父項目中的調(diào)整也將應(yīng)用于所有子項目。
圖 12 共享元素
3.2Function Wizard改進
‘Channel steps’ and‘ Parameter steps’ 現(xiàn)在都可以使用TPT函數(shù),例如 :TPT.rampgradient()。此外,現(xiàn)在還可以為所有支持的整數(shù)數(shù)據(jù)類型生成Asymptote Functions 和 Ramp Functions以滿足我們更復雜和多樣的測試需求。
圖 13 Function Wizard
3.3Python 3.0
TPT 20現(xiàn)在可支持Python 3.0用于測試評估。
圖 14 新增功能函數(shù)
相比之前,TPT不僅可以使用Python 3.0來編寫評估,Python 2.0在使用上也有優(yōu)化。
舉例:
現(xiàn)在可以將兩個“TPTNumpy.array()”對象用“==”進行比較,也支持了幾個與時間相關(guān)的信號的并行分配。
圖 15 示例
3.4TPT項目文件的差異和合并
TPT 20支持TPT項目文件的比較和合并。通過’Diff and Merge view’視圖,可以比較兩個加載的TPT項目文件,并將偏差從一個文件轉(zhuǎn)移到另一個文件。
圖 16 對比項目文件
在測試的過程中,大家肯定避免不了會嘗試修改各種設(shè)置和用例等來實現(xiàn)測試結(jié)果,這一過程也許會產(chǎn)生多個版本的項目文件,待測試成功后就可以使用該功能查看我們修改過的內(nèi)容并做出總結(jié),以便下次應(yīng)用。
3.5TPTBIN文件優(yōu)化在TPT 20中,優(yōu)化了文件存儲形式。相比前期版本縮小了文件大小,節(jié)省了空間,提高了測試效率。
如圖所示,相同的文件在TPT 19中顯示為6KB,但是在TPT 20中為3KB,顯著縮小了文件大小。
圖 17 TPT 20的BIN文件
圖 18 TPT 19的BIN文件
總結(jié)
TPT 20的新功能就先介紹到這里了,每一次的更新和優(yōu)化都是為了更好滿足我們的需求和功能實現(xiàn),給我們帶來新的感受和體驗,如果各位想要進一步了解TPT,歡迎聯(lián)系我們,也希望能給我們帶來新的建議和反饋。
-
測試
+關(guān)注
關(guān)注
8文章
5303瀏覽量
126652 -
自動化
+關(guān)注
關(guān)注
29文章
5578瀏覽量
79280 -
TPT
+關(guān)注
關(guān)注
0文章
23瀏覽量
6983
發(fā)布評論請先 登錄
相關(guān)推薦
評論