由于在開發早期階段編寫的需求會隨著時間的推移變得不夠充分,所以需要對其進行相應調整。那么這時就會出現一個問題: 已經根據需求實現的測試也要跟著進行調整和檢查(進行維護),但這對測試人員來說是相對單調且耗時的。
如何將維護工作減少到最低限度呢?
TPT作為德國PikeTec公司的嵌入式軟件測試工具,通過測試服務和客戶的建設性反饋,不斷識別工具新需求,對上述問題提供了幾種策略。 接下來將從5個方面介紹TPT是如何減少維護工作的。 1. 分離測試數據和預期行為 2. 使用狀態機型測試用例開發測試 3. 測試用例和評估與需求的雙向鏈接 4. 巧用測試方法設計穩健的測試 5. 測試執行的自動化 01 分離測試數據和預期行為 與傳統方法相比,TPT可以將測試用例(用于刺激測試對象)和對預期行為的評估進行分離。這種方式既提高了清晰度,也在測試用例創建過程中節省了大量的工作。
舉個例子
當前輸出信號d等于0,如果輸入信號a、b、c同時大于0,輸出信號d等于輸入信號a、b的和。 對于傳統方法,根據需求和MC/DC要求編寫如下四條測試用例: ? 當使用測試工具TPT時,可以將上述預期行為通過腳本、Trigger Rule等評估方法定義到Assesslet中,且其內容對所有測試用例均可重用。 ? 如圖1,使用Trigger Rule的While condition is true 模式進行評估,簡單介紹一下其使用方法:當測試數據滿足Condition中的內容時,會評估Then check 中的語句,否則就評估Else check中的內容。 ? 圖1 Trigger Rule 還可以通過使用信號波形或斜坡來減少被測系統(SUT)的必要測試用例的數量。如下圖,將上述四條測試用例用一條表示。(預期行為如上述寫在Assesslet中) 圖2 測試用例 另外如果我們想要增加測試深度,例如進行邊界值測試,只需編寫測試數據即可,因為在Assesslet中已經定義了缺失的信息和期望值。
通過上述內容可以看到TPT提供的這種分離方法在創建測試用例時節省了相當大的成本。另外在大多數情況下測試數據可以保持不變,只需要調整Assesslet,這就使得維護工作進一步減少。
02 使用狀態機型測試用例開發測試 TPT支持步驟列表型和狀態機型的測試用例。 對于狀態機型測試用例來說,可以將重復需要的測試數據分離到狀態機的變種中。
舉個例子
開關處于自動檔位下,頭燈根據不同的光照強度,產生不同的變化,測試車輛的燈控功能。 這里重復使用的測試數據是開關處于自動擋,對其創建狀態機和變種,如下圖所示。 圖3 測試用例
如果重復使用的測試數據內容需要更改,這時只需更改一次即可將使用該變種的測試用例全部更改,內容更改越頻繁,節省的工作也就會越多。
03 測試用例和評估與需求的雙向鏈接 TPT支持測試用例和評估與需求的雙向鏈接,在ASPICE中所有測試活動都需要保持雙向追溯。 圖4 測試用例和評估與需求的雙向鏈接 TPT會在每次測試執行后,將需求和測試用例,包括它們的結果,清楚地顯示在報告中。 圖5 報告顯示 如果測試失敗,可以很容易地找到相應的需求。 圖6 未通過需求顯示 對于每個需求,可以很容易找到與之鏈接的測試用例和評估。 圖7 鏈接的測試用例和評估顯示 如果需求在生命周期中發生了改變,那么被改變的需求所鏈接的測試用例會高亮顯示,能夠方便查找,進而減少維護時間。 圖8 測試用例突出顯示 04 使用反應式測試方法設計穩健的測試 TPT的反應式測試方法增加了測試對變化和環境變量的穩健性。反應式測試可以理解為,在測試設計中(搭建測試用例時)定義只有當SUT為已定義狀態時才執行的動作(在轉移線上設置判斷條件),也可以稱為基于事件的測試。
舉個例子
當車輛速度達到30km/h時,執行緊急制動操作,以測試車輛的ABS功能。 搭建測試用例時,只需明確當車輛達到30km/h的目標速度時,TPT會檢測到這一點,并啟動全面制動即可。 圖9 測試用例 前一狀態機可以切換到不同變種,轉移線和后一狀態機內容可以不進行調整。這樣一來就可以為測試用例搭建和維護節省時間。 圖10 變種顯示 05 自動化 我們可以發現測試中的許多任務都是重復的工作,例如在軟件更改后更新測試框架、日常的需求更新、將測試結果反饋到應用程序生命周期管理工具中等。這些工作即使是在測試自動化中也需要由測試人員手動執行。 但是,現階段TPT已經創造了一些可能性來自動化這些手動工作:提供一個允許用戶使用自己的自動化腳本來自動化執行部分工作的API接口(API Script Editor),并且TPT 中85%的GUI功能可以由用戶來實現自動化。
例如
通過下圖中的腳本可以創建TPT工程,生成狀態機型的測試用例。 圖11 API Script Editor 內容 圖12 執行API Script生成的工程 除此以外,還可以通過API Script實現平臺配置,測試評估等功能。 06 總結 本文介紹了使用TPT將維護工作減少到最低限度的五種方法,但TPT的優勢不僅限于以上內容,想了解更多請聯系我們吧。
-
數據
+關注
關注
8文章
7002瀏覽量
88943 -
TPT
+關注
關注
0文章
23瀏覽量
6980 -
Conditione
+關注
關注
0文章
6瀏覽量
7712
原文標題:將測試工作減少到最低限度的5個秘密技巧
文章出處:【微信號:eng2mot,微信公眾號:汽車ECU開發】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論