作者 | 小新小編 | 吃不飽
由于在開發早期階段編寫的需求會隨著時間的推移變得不夠充分,所以需要對其進行相應調整。那么這時就會出現一個問題:
已經根據需求實現的測試也要跟著進行調整和檢查(進行維護),但這對測試人員來說是相對單調且耗時的。
如何將維護工作減少到最低限度呢?
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文章
5382瀏覽量
127073 -
TPT
+關注
關注
0文章
23瀏覽量
7010
發布評論請先 登錄
相關推薦
芯科科技Z-Wave設備測試工具介紹
![芯科科技Z-Wave設備<b class='flag-5'>測試工</b>具介紹](https://file1.elecfans.com/web3/M00/06/4B/wKgZPGeJtRKAACuxAAAxo4U0bvs831.png)
AN101-最大限度地減少線性穩壓器輸出中的開關穩壓器殘留
![AN101-最大<b class='flag-5'>限度</b>地<b class='flag-5'>減少</b>線性穩壓器輸出中的開關穩壓器殘留](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
三菱電機將新建功率半導體模塊封裝與測試工廠
CAN總線測試工具選擇與使用
TAS5630如何才能最大限度地減少電壓失調,或者調節為0?
最大限度地減少TRF7964A和TRF7970A省電模式下的電流消耗
![最大<b class='flag-5'>限度</b>地<b class='flag-5'>減少</b>TRF7964A和TRF7970A省電模式下的電流消耗](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
最大限度地減少TPS53355和TPS53353系列器件的開關振鈴
![最大<b class='flag-5'>限度</b>地<b class='flag-5'>減少</b>TPS53355和TPS53353系列器件的開關振鈴](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
測試工作中的哎呀,當時怎么沒有想到
![<b class='flag-5'>測試工作</b>中的哎呀,當時怎么沒有想到](https://file1.elecfans.com//web2/M00/06/61/wKgaombaXr6AdCfOAAN9w_h8Eoc445.png)
CAN總線測試工具的主要功能
電路板測試工裝制作原理是什么
如何使用低電容探頭最大限度地減少探頭負載
![如何使用低電容探頭最大<b class='flag-5'>限度</b>地<b class='flag-5'>減少</b>探頭負載](https://file1.elecfans.com//web2/M00/C5/9F/wKgZomYA5q6ATRoWAABmQqZUCGA97.jpeg)
評論