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