前言:想要寫出一篇引人入勝的文章?我們特意為您整理了軟件測試中的集成測試分析范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:現如今全球已經進入數字化時代,任何行業都在向著自動化、智能化的方向發展,這樣的發展離不開硬件的支持和軟件的配設。如果一套設備單有硬件沒有驅動軟件程序,那么這臺設備就無法實現自能化生產。為了使軟件能夠正常配套于硬件設備,軟件工程師需要對軟件進行深入測試,從而判斷出該軟件是否存在漏洞,而集成測試是軟件測試中最為主要的方式之一。基于此,本文對集成測試進行了簡單的概述,并提出集成測試的具體策略,同時深入探討了集成測試的具體類型,以供相關人員參考,從而推進軟件測試行業的發展。
關鍵詞:集成測試;軟件測試;具體策略;具體類型
引言
第三次工業革命也被稱為“科技革命”。現如今,人類的生活已經因為科學技術而發生了巨大的改變。在當今二十一世紀,計算機技術、網絡技術、信息技術等大力發展,讓我們的生活變得個加便捷。而軟件工程便是這些技術當中不可或缺的一部分。因此,作為保障軟件質量的軟件測試技術得到了全球科學界的高度關注。目前,軟件測試方式多種多樣。根據研究發現,根據任何測試方式均能夠設計處一套行之有效的測試方案,但沒有任何一套方案能夠容易的將軟件中的所有漏洞、錯誤都找出。因此,在實際的測試過程中,測試工程師往往將多種測試方式結合起來,從而對軟件進行深入測試,進而滿足不同階段對軟件測試的需要。
軟件測試是軟件質量的保障。由于軟件系統大部分使由多個子系統構成的,因此為了使軟件測試有效進行,測試過程需要嚴格按照步驟進行,而測試步驟分為:單元測試、集成測試、確認測試和系統測試。集成測試作為單元測試的后一步和確認測試的前一步對于軟件系統的質量保障有著重要的意義。因為軟件系統的各個子單元能夠正常運行并不意味著將這些子單元集合在一起還能夠正常運行,并且在集合后比較容易出現錯誤。很多公司因為該原因成立了專門的集成測試的測試小組,如果對軟件系統進行了深入的集成測試,將會找到軟件中存在的大部分漏洞,從而為后續測試運行工作提高了強而有力的幫助。
1.1集成測試的定義
集成測試的主要目的是對已通過運行測試的單元組件集合在一起而進行的整體測試。該種測試技術屬于一種構建整體軟件結構的技術,其具有全面性和系統性的特點,同時集成測試能夠找到一些關于接口錯誤的漏洞。
1.2集成測試遵循的原則
集成測試是整個軟件測試中最為重要的一環,它的測試結果很大程度上體現該軟件的成功與否。軟件工程師如果要進行集成測試,為了提高測試的準確性,需要遵循以下原則:①測試過程中需要對所有接口進行測試;②對主要的單元模塊要進行深入測試;③測試時應當按層次進行,不可跳躍測試;④在測試方案的選擇中,應當將成本、測試準確度、測試進度等因素考慮在內;⑤集成測試方案應當基于軟件的總體設計而設置,并且應當在軟件開發過程中盡早進行;⑥測試工程師與開發工程師應當相互溝通,確定好模塊與接口的劃分;⑦如若因為某些原因需要對接口進行修改,這些改變的接口需要進行再次測試;⑧對于測試結果應當準確記錄;⑨集成測試應當嚴格遵循測試方案進行,不能夠隨意更改測試方案。
1.3集成測試的任務
集成測試作為整個軟件測試過程中的關鍵一環其主要任務有以下幾部分:①將各個子單元模塊集合在一起,并進行相互調用功能,在傳輸數據的過程中檢查是否出現接口丟失的情況;②在各個子單元模塊集合在一起后,進行系統性的運行,從而檢測各項子模塊功能是否達到設計要求;③在進行單元模塊調用時,是否會出現單元模塊功能互斥的現象;④在進行全面測試時,是否會出現數據不正常修改情況;⑤如果單個單元模塊有漏洞,是否會形成錯誤積累現象,使漏洞越來越大,從而使軟件不符合設計要求。
2集成測試的策略
集成測試中需要設置諸多模塊來輔助集成測試的進行。這些模塊包含樁模塊和驅動模塊。驅動模塊是將一些數據傳輸給待測模塊,從而得出模塊的功能和特性,最總找出漏洞并打印出結果。其中樁模塊也被稱為存根程序,用來取代被調用模塊的模擬。該模塊進行的數據處理較少,而且其調用是又待測模塊調用的。例如為了檢驗模塊直接的借口,需要入口和返回進行打印。在集成測試的方式中,一般可以將其分為兩種,分別是增量集成和非增量集成。其中增量集成由于是通過小增量的方式對軟件系統進行測試的,因此這樣能夠更好、更徹底的檢測接口。
3集成測試的主要類型
3.1基于功能分解的集成
在進行軟件集成測試時,將功能分解并進行測試時最為重要的測試方式之一。該種測試方式一般都是采用文字或樹狀圖的形式來進行功能分解的。進這種測試方式進行深入討論時,將要按照集成模塊的順序進行測試。(1)自頂向下集成方式(樹狀圖中由頂端開始進行)。此種方式是將軟件結構中的主控制體系進行優先集成,而后對其路徑下的模塊進行分組集成測試。(2)自底向上集成方式(樹狀圖中由底端開始進行)。該種集成測試方式與自頂向下集成方式恰巧相反。但其中具體步驟仍有所不同,具體不同之處在于該種集成方式中由分解樹上層單元的模塊來取代具有模擬功能的樁。反過來說,自底向上集成需要從“樹”中的“葉子”處開始,并且需要用特殊方式編寫的模塊開進行驅動測試。在模塊當中,一次性驅動代碼相比較樁中的驅動代碼較少。在軟件系統設計中,大部分系統在葉子節點處都有著較高的扇出數。因此,由該種集成順序實施的方案中優點便是驅動模塊數量相對較少,但缺陷便是驅動模塊都較為復雜。
3.2基于功能分解方法的優缺點
(1)自頂向下集成方式(樹狀圖中由頂端開始進行)。該方式的優點在于能夠讓測試工程師在測試開始時便了解系統的框架,從而能夠使測試過程逐漸精細化。缺點在于在進行測試前需要提供樁模塊來模擬被調用的子模塊。由于樁模塊僅僅是進行模擬,可能無法反映出實際情況,因此測試可能不全面。就另一方面來講,裝模塊并不能對數據進行模擬,如果模塊間的數據流不能構成有向無環圖,便無法生成模塊的測試數據。并且,對測試結構的觀察和結果的表達也存在著一定的難度。(2)自底向上集成方式(樹狀圖中由底端開始進行)。該種方式的優點便是對驅動模塊的所有參數都進行了模擬調用,并且在數據生成方面也是比較容易的。如果軟件系統的關鍵驅動模塊在結構體系底部,那么該種方式便有著其他方式沒有的測試優勢。缺點:系統的整個框架需要在最后的過程再能看到。
3.3基于調用圖的集成
調用圖集成是集成測試中常用的測試類型之一,可以分為兩種,一種是相鄰集成,另一種是成對集成。該種集成方式的優點是以行為基礎為主,并且還不用開發驅動模塊和樁模塊。缺點:有大量鄰居的情況下有隔離缺陷,并且在清除缺陷后需要對相鄰的代碼進行重新測試。
3.4基于路徑的集成
基于路徑的集成是將單獨開發測試重點轉移到單元交互(單元模塊的“協同功能”)上,而這種轉移需要通過各模塊單元的接口進行。在此,單元模塊接口是結構性的,而單元模塊交互卻是功能性的實現。就以MM--路徑測試而言,這是一種功能性與結構性相結合的測試方式,其優點:不需要利用分解或圖集等結構性便可以開展測試,與軟件系統聯系緊密。并且該測試方式可以被用于面向對象的軟件測試。缺點:需要大量的路徑標識,這樣的工作量較大,并且與樁模塊和驅動模塊的開發不同。
3.5面向對象環境中的集成測試
兩種不同的策略:基于線程的測試(thread—basedtesting)。基于使用的測試(use—basedtesting)。驅動程序和樁程序:驅動程序和樁程序實現的功能有所不同。驅動程序能夠在顯示界面前就開始進行系統測試,而且其也能夠對類和低層的操作進行測試;而樁程序測試能夠在缺少類的情況下對類協作進行測試。
參考文獻
[1]楊培培,趙海生,李振星.實用軟件測試方法研究[J].計算機應用,2015,35(S1):166-167+173.
[2]牛穎蓓,左蕓.基于VC33航天軟件集成測試技術研究[J].計算機測量與控制,2020,28(01):26-29.
[3]黃天開.計算機軟件測試方法及應用研究[J].中國新通信,2020,22(16):56-57.
作者:謝曉麗 單位:四川九洲電器集團有限責任公司