汽車軟件的很大一部分開發(fā)工作必須投資于測試的維護(hù)。在開發(fā)過程中,軟件單元通常會擴(kuò)展新的功能,重構(gòu)或糾正錯誤。對行為、結(jié)構(gòu)和接口的每一個更改都要再次測試。然而,對代碼的更改通常會對現(xiàn)有的測試產(chǎn)生影響,因此也必須進(jìn)行調(diào)整。在這種情況下,我們談到了測試中的維護(hù)。
隨著測試的數(shù)量每天都在增加,維護(hù)成本也在增加。今天我們來看看如何減少測試中的維護(hù)成本。好消息是:通過創(chuàng)新的方法,您可以將維護(hù)成本降低一半以上。
從長遠(yuǎn)來看,下面的5大要點可以可持續(xù)地減少維護(hù)工作:
避免測試用例中的冗余。在編碼中,通過將代碼部分移動到單獨的函數(shù)來避免冗余一直是標(biāo)準(zhǔn)實踐。在測試中,這種方法還沒有完全被接受。通常,測試自動化包含冗余實現(xiàn),必須多次創(chuàng)建,因此必須多次維護(hù)以防更改。這是不必要的和最大的浪費(fèi),因為它使測試過程變得緩慢和昂貴。因此,不如使用測試自動化編碼領(lǐng)域中已有的方法,比如封裝。
通過結(jié)構(gòu)降低復(fù)雜性。無論是在小型項目還是大型項目中,測試用例的數(shù)量每天都在增加。如果沒有具體的規(guī)范,這種快速增長很快就會導(dǎo)致測試項目中的結(jié)構(gòu)混亂。因此,必須花費(fèi)很大的代價來分析測試的變更需求。所以,需要為測試的結(jié)構(gòu)和與需求的聯(lián)系建立清晰的規(guī)則。
在測試中避免套管程序(spaghetti code)。在維護(hù)方面,合并變更很快就變得很棘手。這花費(fèi)了可以用來測試新功能的寶貴時間。但首先,基礎(chǔ)應(yīng)該重新站住腳。有幾種方法可以避免測試中的“意大利面條式”代碼:通過層次結(jié)構(gòu)進(jìn)行抽象、使用引用、對不相關(guān)的測試輸入進(jìn)行并行建模,以及將測試數(shù)據(jù)與預(yù)期值分離。測試用例將更短,更緊湊,更容易理解。這對測試用例的創(chuàng)建、審查和更改都有積極的影響。
避免工具工作中斷。每個測試人員都認(rèn)為工具工作中斷是日常工作中的痛苦。一個典型的例子是測試用例創(chuàng)建過程:需求在ALM工具中,測試在測試工具中,測試人員必須不斷地在兩個工具之間切換。一旦完成,測試人員必須手動將鏈接/ id引用/測試結(jié)果從測試傳輸?shù)紸LM。這很容易出錯,而且會耗費(fèi)寶貴的時間。通過在頻繁數(shù)據(jù)交換的工具之間創(chuàng)建穩(wěn)定的集成,可以避免這種不必要的工作。盡可能地自動化界面。
在不同的測試級別/階段重用相同的測試。無論是基于模型的開發(fā)還是手工編碼,代碼通常在不同的環(huán)境中進(jìn)行多級測試(例如,在Windows上測試和針對目標(biāo)硬件的測試)。在最壞的情況下,測試需要多次復(fù)現(xiàn),這是不必要的。測試用例創(chuàng)建中的平臺獨立抽象允許他們重用相同的測試用例,多次節(jié)省時間。通過一次映射,可以輕松生成特定于平臺的定制。
這些方法是我們測試自動化工具TPT的基本原則和一部分。我們將詳細(xì)地向您解釋它們,以便您可以將維護(hù)工作減少到最低限度。
TPT作為PikeTec公司的嵌入式軟件測試工具,具有很高的擴(kuò)展性和便捷性。隨著軟件測試日趨復(fù)雜并且需求多樣化,TPT不斷改進(jìn)以滿足與時俱進(jìn)的要求。您可以在所有開發(fā)階段使用TPT進(jìn)行測試。無論是簡單的單元測試還是復(fù)雜的系統(tǒng)測試,TPT都能夠使得測試變得快捷、簡單和直觀。
PikeTec公司是全球知名的基于模型的嵌入式系統(tǒng)測試工具TPT的軟件供應(yīng)商,總部位于德國柏林。北匯信息作為PikeTec在中國的獨家合作伙伴,致力于幫助中國客戶提升嵌入式控制系統(tǒng)的開發(fā)效率。目前,TPT已被眾多國內(nèi)知名主機(jī)廠和零部件企業(yè)認(rèn)可,在新能源(VCU/BMS/MCU)以及ADAS等領(lǐng)域中被廣泛應(yīng)用。
-
測試
+關(guān)注
關(guān)注
8文章
5316瀏覽量
126723 -
汽車
+關(guān)注
關(guān)注
13文章
3531瀏覽量
37375
發(fā)布評論請先 登錄
相關(guān)推薦
評論