當前位置:才華都>實用範文>論文>

裝備虛擬訓練軟件測試技術論文

論文 閲讀(1.31W)

隨着信息化軍事技術的不斷髮展,裝備仿真訓練軟件也獲得了迅速的發展,其規模越來越龐大、實現的功能越來越多、結構越來越複雜,裝備仿真訓練軟件的性能和可靠性也成為至關重要問題的。下面小編為大家分享裝備虛擬訓練軟件測試技術論文,歡迎大家參考借鑑。

裝備虛擬訓練軟件測試技術論文

1 軟件測試模型

軟件測試是裝備仿真訓練軟件開發過程中一個不可缺少的重要步驟,而且隨着裝備仿真訓練軟件規模的增大、複雜度的增加,軟件測試也變得越來越重要。裝備仿真訓練軟件軟件測試過程與開發過程一樣,都能決定軟件的質量,而且測試過程的質量將直接影響測試結果的準確性和有效性。

在軟件開發幾十年的實踐過程中,人們總結了很多的開發模型,這些模型對於軟件開發過程具有很好的指導作用,由於測試與開發是緊密結合在一起的,所以軟件測試也需要有測試模型去指導實踐。軟件測試模型是將測試過程活動進行抽象的概念模型,用於定義測試活動的流程和方法,是確保軟件工程質量的重要手段。測試專家通過實踐總結出了很多很好的測試模型。這些模型將測試活動進行了抽象,明確了測試與開發之間的關係,更好的分析軟件測試在整個軟件研發中的參與度和工作過程,進而不斷完善軟件質量保證流程,提高軟件產品的質量,併成為了測試管理的重要參考依據。目前,主要的測試模型主要有以下4種:

1.1 V模型

V模型是將傳統測試模型瀑布模型改進後的一種測試模型,如圖1所示,從左到右,分別描述了軟件的基本開發過程和對應的測試行為,清楚地體現出每個測試階段和開發過程各階段的對應關係。但是在V模型當中,測試過程放在了編碼的下一個階段,這就容易使人誤解為測試是軟件開發的最後一個階段,而需求分析的檢驗工作也是在驗收測試才能進行。

1.2 W模型

W模型由兩個V模型組成,分別代表測試與開發過程,非常明確的標註了生產週期中開發與測試之間的對應關係,如圖2所示。但是在W模型中測試和開發也保持着一種線性的前後關係,上一階段工作完全結束,才能正式開始下一階段的工作,這樣就無法支持迭代、自發性以及變更性調整等情況。

1.3 H模型

H模型形成了一個完整獨立的測試過程,並且將測試準備活動和測試執行活動清晰的區別出來,如圖3所示。圖中僅僅演示了在整個生命週期中某個層次上的一次測試“微循環”,圖中的“其他流程”可以是任意開發流程。H模型的特點是軟件測試是一個獨立的流程,貫穿產品整個生命週期,與其他流程併發地進行。當某個測試點就緒時,軟件測試即從測試準備階段進入測試執行階段。

2 裝備仿真軟件測試的特點及關鍵問題

2.1 裝備仿真軟件測試的特點

裝備仿真訓練軟件是一個由系統、分系統/子系統、模塊組成的複雜系統,並隨着系統和操作功能的增多,複雜程度也在增加,系統的好壞歸根結底是由各個分系統和各個模塊的好壞決定的,對各個分系統和各個模塊的測試是一個非常重要的環節。裝備仿真訓練軟件測試具有以下6個特點:

2.1.1 裝備仿真訓練軟件測試主要分為三個階段

從軟件生命週期全過程來看,軟件測試可分為單元測試、功能測試、集成測試、性能測試、系統測試、配置測試、迴歸測試等階段。根據裝備仿真訓練軟件的結構、規模、類型和安全性關鍵等級等方面的特點,確定裝備仿真訓練軟件測試主要分為單元測試、集成測試和系統測試三個階段。

2.1.2 單元測試是裝備仿真訓練軟件的測試重點

裝備仿真訓練軟件測試是一項針對性很強的工作,即使對同一類型的功能,可能由於不同型號任務的要求,功能實現也會有所差異,因此要求重點進行單元測試。單元測試是根據詳細設計和源程序,瞭解每個最小模塊的輸入、輸出條件和邏輯結構是否正確合理。單元測試通常應對模塊內所有控制路徑設計測試用例,以便發現錯誤。

2.1.3 裝備仿真訓練軟件程序內部結構複雜,路徑組合數目龐大

程序的三種基本結構分別是:順序結構、分支結構和循環結構,裝備仿真訓練軟件最小組成模塊的內部程序都可看作是這三種結構按不同方式組合的產物,這其中包含大量多重選擇和循環嵌套的程序,而且模塊與模塊之間存在着大量的交互,所以程序內部包含的不同路徑數目可能是天文數字,尤其對大規模複雜的裝備仿真訓練軟件,窮舉所有的路徑是不可能的,需要根據實際情況去選擇適合的覆蓋測試方法。

2.1.4 裝備仿真訓練軟件黑盒測試用例數量龐大

裝備仿真訓練軟件中包含了不同專業的多個分系統,每個分系統又由多個子系統和模塊組成,其中包含的`參數數量龐大,參數與參數之間的進行組合之後的數量將更加龐大,而軟件運行出現的故障時,更多的情況是由於多個參數的相互作用的原因,所以,要想充分考慮到參數與參數之間的關係,需要的測試用例數量是無窮盡的。

2.1.5 裝備仿真訓練軟件測試一般需要特定的測試環境支持

裝備仿真訓練軟件測試可以採用靜態測試方法和動態測試方法。其中,靜態測試以人工檢查為主,不需要特定的測試環境;而動態測試則需要建立驅動軟件模塊執行的測試環境,支持軟件模塊的參數輸入和輸出結果的可視化。

2.1.6 裝備仿真訓練軟件測試一般採用白盒測試與黑盒測試相結合的方法

一般採用白盒測試方法來測試裝備仿真訓練軟件程序內部的邏輯結構;裝備仿真軟件的功能測試部分則需要採用黑盒測試方法。

2.2 裝備仿真軟件測試的關鍵問題

軟件測試的目標是發現軟件中可能存在的設計缺陷和錯誤。測試時驗證得越全面,軟件中可能存在的缺陷就會越少,而每一個項目、每一個軟件的測試都會有不同的特點和測試關鍵問題,測試工作要根據軟件的特點和關鍵問題,設計適合該軟件的測試。裝備仿真訓練軟件測試的關鍵問題主要有以下4點:

2.2.1 測試工作必須由非開發人員來完成

由於許多開發單位對軟件測試的認識水平不夠,自己設計、自己編程、自己測試、自己維護的現象還比較普遍,這樣的結果就是導致測試結果不理想,沒有達到測試的要求。所以,為了保證測試質量,裝備仿真訓練軟件的測試工作必須由非開發人員來進行,保證的效果。

2.2.2 在白盒測試中,採用基本路徑測試方法解決路徑覆蓋率問題

在裝備仿真訓練軟件結構中,路徑組合是一個龐大的數字,所以要在測試中覆蓋所有路徑是不可能的,需要把覆蓋的路徑壓縮到一定範圍內。如:程序的循環部分可以只循環一次。因此,在路徑覆蓋測試上,我們選擇基本路徑測試法。

2.2.3 在黑盒測試中,採用組合覆蓋測試方法解決測試用例無窮盡問題

由於裝備仿真訓練軟件中參數與參數的組合數量龐大,無法設計無窮盡的測試用例滿足覆蓋率問題,為此,採用組合覆蓋測試方法,不僅可以充分考慮到軟件中參數與參數之間的相互作用,更重要的是能以最少的測試用例實現最大程度的覆蓋,具有較好的測試效果。

2.2.4 要有必要的測試文檔

沒有文檔的項目是一個不成功的項目,同樣,沒有文檔的測試也不會是一個成功的測試。測試工作的計劃、設計、實現和問題報告都要以文檔的形式記錄下來留存,方便同項目組人員進行閲讀和修改,更重要的是對於後續同類項目是資源的積累過程和設計的改進依據。

3 裝備仿真軟件測試模型

測試過程模型定義了測試的流程和方法,為測試工作提供了指導。但是傳統的測試模型各有長短,不可能適合所有的測試軟件,軟件測試模型因測試軟件的不同而不同,所以,本文通過對傳統的測試過程模型進行的分析和探討,同時研究分析了裝備仿真訓練軟件的實際情況,進而得到了適合裝備仿真軟件的測試模型,然後從該模型出發,完善軟件測試工作流程。裝備仿真訓練軟件測試模型是一個包含了軟件文檔審查、代碼靜態分析和審查、單元測試、子系統集成測試、系統測試和驗收測試的綜合測試模型,如圖4所示。

3.1 測試準備

測試準備階段是在測試實施之前,構造執行測試所需的要素,這些要素通常包括軟件開發文檔、軟件開發程序、實際執行測試所需的軟件、準備測試環境和測試工具;同時還要為測試過程準備適當的測試用例。

3.2 單元測試

裝備仿真訓練軟件單元測試部分包含靜態測試和動態測試兩個部分。其中靜態測試的對象是裝備仿真訓練軟件單元模塊的文檔和程序代碼,主要通過文檔審查、代碼審查、代碼靜態分析等方法來確保軟件需求和設計文檔的正確性、代碼的規範性、設計或實現的正確性。而軟件結構和功能方面的缺陷則需要採用動態測試的方法來完成。

裝備仿真訓練軟件單元模塊動態測試採用黑盒測試和白盒測試相結合的方法,從模塊級檢查軟件的功能、性能、接口和其他約束條件是否滿足需求。白盒測試技術主要測試每個單元內部邏輯結構的覆蓋率,黑盒測試技術測試模塊單元功能滿足需求情況。

3.3 集成測試

集成測試主要檢驗裝備仿真訓練軟件中經過單元測試的模塊和子系統各部分工作是否實現了相應技術指標、達到了相應的要求。在裝備仿真訓練軟件集成測試部分,既可以彌補單元測試中沒有測試到的Bug,又可以測試單元測試中沒有辦法測試的功能,如裝備仿真訓練軟件中前後台集成之後的關聯功能。所以集成測試就是測試各個部件之間的配合情況,為系統測試提供基本保證。

裝備仿真訓練軟件的集成測試必須在所有模塊、子系統能夠正常運轉的情況下才能進行,一般採用的方法是數據驅動方法中的自底向上集成測試。具體的步驟是先測試組成子系統的模塊羣,由於最底層的單元模塊都已經經過了單元測試,所以各個模塊可以向上集成為各個子系統;然後在此基礎上就可以測試各個子系統能否正常工作,以及進行各個子系統之間的測試工作。

3.4 系統測試

裝備仿真訓練軟件的系統測試是在集成測試的基礎上進行的,不僅是單純的測試軟件部分,而是將硬件、網絡和外設等其他要素結合進來進行綜合性測試。系統測試主要依據系統總體技術方案和需求説明書進行測試,目的是發現系統與用户需求不符或矛盾的地方。

系統測試的測試類型一般包括功能測試、性能測試、負載測試、強度測試、容量測試、安全性測試、用户界面測試、有效性測試、配置測試、故障恢復測試、安裝測試和迴歸測試。而在裝備仿真訓練軟件的系統測試中,功能測試、性能測試、負載測試、安全性測試、有效性測試、配置測試、故障恢復測試是必須進行的,其他項目可以依據具體項目情況選擇性的進行。

3.5 驗收測試

在完成裝備仿真訓練軟件的系統測試之後,進行驗收測試。只有通過了驗收測試,才標誌着項目的結束,軟件產品的完成。一般來説,驗收測試以用户為主,主要驗證軟件的功能、性能以及其他特性是否與用户要求相一致。

4 結束語

軟件測試的目的是通過測試來發現缺陷,找出缺陷的分佈特徵和出現的規律,以便在新的開發項目中改進設計結構,避免缺陷的出現,同時也能夠通過設計有針對性的檢測方法,改善軟件測試的有效性。隨着裝備仿真訓練軟件質量要求的提高,軟件測試在軟件開發中的地位越來越重要。裝備仿真訓練軟件測試模型是從傳統的軟件測試模型中提取出來的,適合裝備仿真訓練軟件的測試模型,不僅可以提高測試在軟件生命週期中的作用,還可以完善軟件部分的工作流程。