軟體測試 - 存根



開發一個易於使用並確保高質量的軟體需要考慮多個因素。驅動程式和存根在測試過程中起著重要作用。它們被用作尚未準備好開發的模組的替代品。因此,藉助驅動程式和存根,即使軟體開發仍在進行中,也可以開始測試。

驅動程式和存根用於尚未開發、缺失或正在開發的元件。因此,驅動程式和存根都充當軟體原始元件的替代品。它們能夠模擬缺失元件的功能。它們非常有助於最大限度地減少測試周期中的延遲,加快整個測試過程並提高測試效率。

什麼是軟體存根?

軟體存根用於自頂向下整合測試。它們由開發人員實現,作為軟體中缺失或尚未完全開發的特定單元的替代品。它們能夠模擬軟體中不可用模組的所有功能。當需要某些較低級別的元件進行測試但在此時無法訪問時,主要使用它們。

應該開發軟體存根,以便它們顯示跟蹤和顯示的訊息。它們還處理實際模組應該作用於的值。此外,它們獲取在測試時要使用的引數或引數。

當軟體需要與外部系統互動時,也使用存根。

存根流程圖

Role of Stubs in Top Down Integration Testing

上圖清楚地表明,模組 1、2 和 3 可用於整合,而下面的模組仍在開發中,此時無法整合。因此,使用存根來測試模組。整合順序將為:

1,2
1,3
2,Stub 1
2,Stub 2
3,Stub 3
3,Stub 4

測試方法

+ Firstly, the integration between the modules 1,2 and 3
+ Test the integration between the module 2 and stub 1,stub 2
+ Test the integration between the module 3 and stub 3,stub 4

什麼是軟體驅動程式?

軟體驅動程式用於自底向上整合測試。它們建立的目的與存根相同,但是它們比存根複雜得多。當測試時某些模組由於某些原因仍未開發時,使用它們。因此,驅動程式充當這些缺失模組的替代品。當需要某些更高級別的元件進行測試但在此時無法訪問時,主要使用它們。此外,驅動程式和存根可以在測試時同時使用。

讓我們以一個電子商務為例,其元件包括登入、產品搜尋、支付、訂單摘要和幫助。始終建議並行開始所有元件的測試,以便一旦開發出其中一個元件,就可以將其與其他元件結合起來並進行驗證。但是,通常情況下,元件並未完全開發到可以用於測試的程度。在這種情況下,使用驅動程式和存根。

讓我們假設登入模組已準備好,但是產品搜尋模組的開發仍在進行中。此時,可以使用驅動程式或存根來模擬產品搜尋模組的工作。因此,如果某些模組仍然不可用,它們有助於繼續進行測試。同樣,如果從開發角度來看其他模組(如支付、訂單摘要和幫助)尚未完成,則可以使用驅動程式和存根。

驅動程式和存根是否執行相同的功能?

是的,驅動程式和存根執行相同的功能,並且由於一個依賴於另一個模組的模組不可用,因此可以在測試時使用它們。

存根和驅動程式之間的區別

序號 存根 驅動程式
1 用於自頂向下整合測試。 用於自底向上整合測試。
2 被稱為被呼叫程式。 被稱為呼叫程式。
3 當較低級別模組不可用時使用。 當較高級別模組不可用時使用。

結論

本教程對軟體存根進行了全面的介紹。我們首先描述了什麼是軟體存根,什麼是軟體驅動程式,驅動程式和存根是否執行相同的功能,以及存根和驅動程式之間的區別。這使您掌握了軟體存根的深入知識。明智的做法是不斷練習您所學的內容,並探索與軟體測試相關的其他內容,以加深您的理解並拓寬您的視野。

廣告