有一種東西,
如果它太小,需要付出的努力就太大;如果它太大,就很難測試。
沒錯!它是單元。
但是什么才是一個好的單元定義呢?為什么它如此重要?
單元的定義對測試過程有很大的影響,但同時單元的定義也是不精確的。如果以一種不恰當的方式定義單位,這可能意味著大量的努力甚至麻煩。術語“單元”的定義可見于ISO 26262、ISTQB、ASPICE和許多其他文件。
我們的結論是:單元是一個小的可測試的軟件組件。不幸的是,這種定義非常模糊。這樣的定義不是用于工具,而是用于評估和審計。因此,在大多數組織中,這個術語是單獨指定的。
定義術語“單元”有兩種方法:通用描述和體系結構描述。

在通用描述中,單元將被定義為一個文件或一個函數。從特定的、體系結構的角度來看,單元是軟件體系結構中的一個元素。基于體系結構的特定定義可以減少單元測試中測試對象的數量。以這種方式定義的單元可以包含多個文件中的多個函數。
這種方法不違反ISO 26262或ASPICE的要求。此外,如果體系結構是自上向下開發的,您可以將體系結構的更高級別指定為純集成測試,從而也將減少單元測試級別的測試對象。在單元級別省略的測試會在之后的軟件集成測試(SWE.5)中執行。
一些組織通過調整單元的定義來縮小他們自己的需求之間的差距。典型的補充包括:
更精確地定義單元,例如,在編程語言C中,將單元定義為函數級別的數據和指令的封裝,或者
為單元構造過程提出要求,例如指定最大圈復雜度。
專業建議:對于具體項目來說,如果需求是好的,但太過籠統或太過嚴格,可以與客戶討論和協商,以定義一個一致的解決方案作為替代措施。這可以大大減少工作量。從風險的角度來看,定義單元的時間應該越早越好。
TPT可以測試所有類型的單元定義。從工具的角度來看,這并不是最重要的。為了將測試過程中產生的總工作量減少到最小,我們建議不要籠統地定義單元。這會為重構活動提供便利并減少額外的工作。
-
代碼
+關注
關注
30文章
4968瀏覽量
73970
發布評論請先 登錄
半導體嵌入式單元測試的核心技術、工具選型與落地全流程
嵌入式軟件單元測試必要性與專業工具重要性的系統性專業研究報告
資料] 汽車軟件質量躍遷的系統性路徑:基于ISO 26262標準的單元測試體系重構與中日實踐深度對比(2026學術研究報告)
汽車軟件質量躍遷的系統性路徑:基于ISO 26262標準的單元測試體系重構與中日實踐深度對比(2026學術研究報告)
嵌入式軟件單元測試中AI自動化與人工檢查的協同機制研究:基于專業工具的實證分析
C語言單元測試在嵌入式軟件開發中的作用及專業工具的應用
嵌入軟件單元測試的全面研究與實踐
新能源汽車質量保證體系與傳統汽車單元測試規范的融合研究
單元測試專業工具在新能源開發中的作用研究
邊聊安全 | 軟件單元測試的設計方法
單元測試:會變化的定義
評論