最近了解到了Tessy這款測試軟件,嘗試一下使用它來測試AUTOSAR應(yīng)用層軟件。
模型開發(fā)
首先來實(shí)現(xiàn)一個非常基礎(chǔ)的功能,分步驟實(shí)現(xiàn)4個數(shù)的加和,y1 = x1 + x2, y2 = x3 + x4, z1 = y1 + y2。用模型實(shí)現(xiàn)就是如下所示:
通過AUTOSAR Component工具箱提供的Quick Start能夠快速為一個模型配置AUTOSAR元素。
生成代碼后整理為如下結(jié)構(gòu):
├─include
│ │ Add1.h
│ │ Add1_private.h
│ │ Add1_types.h
│ │ Add2.h
│ │ Add2_private.h
│ │ Add2_types.h
│ │ Rte_Add1.h
│ │ Rte_Add2.h
│ │
│ └─common
│ Compiler.h
│ Platform_Types.h
│ Rte.h
│ Rte_Type.h
│ rtwtypes.h
│ Std_Types.h
│
└─src
Add1.c
Add2.c
Rte.c
其中src是模型生成的函數(shù)實(shí)現(xiàn)代碼,include下是模型相關(guān)的頭文件,common是公用頭文件, Compiler .h Platform_Types .h Std_Types .h是AUTOSAR工具箱內(nèi)置的, rtwtypes .h Rte_Type .h是模型編譯時生成的, Rte .h Rte .c 是計劃用來存放RTE的全局變量中間值(在本例中不是必須的,在Tessy中同樣可以配置)。
Tessy使用
創(chuàng)建一個Tessy工程,選擇組件測試而不是單元測試。
指定源文件和頭文件。
點(diǎn)擊分析工程后,Tessy可以自動識別出工程中接口對象,包括函數(shù)和全局變量等。
新增全局變量,模擬RTE,為數(shù)據(jù)流提供讀寫的存儲基礎(chǔ)。
這里按照SWC Port的名字命名了以下全局變量。這些全局變量的IN/OUT/INOUT屬性,將會影響到它們在測試用例中輸入值和期望值的位置。
可以看到,SR接口被識別為外部函數(shù),因?yàn)樗鼈兇藭r并無實(shí)現(xiàn),右鍵為其添加樁函數(shù)。
因?yàn)檫@里樁函數(shù)的讀寫確實(shí)會影響到代碼邏輯,因此不能簡單補(bǔ)充一個假實(shí)現(xiàn)通過編譯即可,而是要為它們補(bǔ)充讀寫全局變量中間值的邏輯。這里就補(bǔ)充了SR接口的具體讀寫操作。
完成上述工作之后,整個測試工程就處于測試就緒狀態(tài)。接下來就可以編輯測試場景了。
首先需要針對某一個Test Project新建一個Test Case。對于組件測試來說,要使用SCE(Scenario Editor)來編輯測試用例。
通過拖拽的方式,可以為某個時刻添加一個函數(shù)調(diào)用的請求,這一點(diǎn)非常地方便。
如果是周期性任務(wù),還可以將函數(shù)配置為Work Task,并配置運(yùn)行周期和偏置。此時就不需要再拖拽該函數(shù)到每一個時刻了。
針對關(guān)注的時刻,設(shè)計輸入值和期望值。這里注意幾種Tessy的狀態(tài)指示符,一般來說,綠色代表通過,黃色代表就緒,灰色代表部分就緒,而白色就代表未就緒。
點(diǎn)擊運(yùn)行測試,就可以看到運(yùn)行結(jié)果了。通過的測試點(diǎn)會顯示綠色。完成測試后,可以查看覆蓋率以及導(dǎo)出測試報告。
總結(jié)
使用下來的總體感覺是方便易用,簡單快捷,節(jié)省了大量的測試人員用于寫測試代碼的過程。其他高級用法持續(xù)體驗(yàn)中。
-
AUTOSAR
+關(guān)注
關(guān)注
10文章
370瀏覽量
22373 -
SRC
+關(guān)注
關(guān)注
0文章
61瀏覽量
18301
發(fā)布評論請先 登錄
AUTOSAR軟件架構(gòu)是由哪些部分組成的
Tessy嵌入式軟件單元測試/ 集成測試工具的相關(guān)資料分享
Tessy嵌入式軟件單元測試/集成測試工具的相關(guān)資料分享
AUTOSAR基礎(chǔ)軟件層是由哪些部分組成的
AUTOSAR軟件架構(gòu)(二)

AUTOSAR 基礎(chǔ)軟件層

電機(jī)控制器應(yīng)用層軟件(模型)主要功能信息
Tessy — 嵌入式軟件單元測試 / 集成測試工具

Tessy—嵌入式軟件單元測試/集成測試工具

評論