主機目標測試中的模擬

讓我們首先從宿主目標開發的意義開始。這是一種開發過程,其中開發應用程序的環境與最終執行的環境完全不同。開發環境稱為「主機」環境,執行環境稱為「目標」環境。我們首先想到嵌入式系統開發,對。攜帶型設備應用程序開發也是如此。

首先,最重要的是,必須在執行應用程序的環境中進行測試。但是,始終可以在目標中進行測試嗎?顯然沒有。因為在大多數情況下目標環境根本不適合測試。它可能沒有調試器,鍵盤甚至處理器。再次在此類環境中進行測試,例如電路模擬器中所需的附件非常具有成本效益。同樣,許多試圖在目標中測試其工作的程序員可能會造成瓶頸。因此,最好的主意是在主機端進行儘可能多的測試。這是「模擬」的要求。

模擬意味著在主機本身中創建目標環境以方便測試。該應用程序無法區分實際目標和模擬目標,這使我們的工作變得容易。對主機進行最大程度的測試,然後對目標進行簡短的確認測試即可完成工作。確認測試的需要是探索宿主和目標之間可能在後面造成問題的差異區域。它們可能是字長,數據結構,位的重要性等方面的差異。

但是對於所有這些,第一件事就是一個好的軟體體系結構。好的架構會將介面模塊與其他模塊分開。這減少了測試的目標依賴性。因此,應該在研究測試需求之後完成架構。因此,可以計劃模擬。可能的模擬量也隨目標和應用程序之間的耦合而變化。因此,在決定支持模擬之前,可能的模擬數量和所需的模擬數量是兩個重要因素。

如果您對這個主題感興趣,可以訪問我的個人博客,網址為 [http://smruti-bugfree.blogspot.com]