孫靖
摘 要:21世紀是知識經濟快速發展的新紀元,各種新型的科學技術應運而生,第一臺數字計算機問世不久,技術人員就創造出了軟件,軟件實際上是一系列按照特定順序組織的計算機數據以及指令的集合。隨著軟件編寫技術的日趨成熟,軟件結構的好壞以及運行的穩定性都直接影響著軟件的正常使用,軟件測試技術可以評估軟件的性能與問題,因此軟件工程的基礎組成部分就包括軟件測試技術。伴隨著我國軟件數量的爆炸式增長,對軟件測試技術的要求越來越高,但我國軟件測試技術仍然存在較大的問題。本文將深入的研究分析我國軟件測試的應用以及現狀,探討軟件測試技術的發展趨勢,為我國軟件測試技術的發展提供參考。
關鍵詞:軟件測試技術;應用;發展;趨勢
隨著全球經濟一體化的快速發展,軟件工程技術已經普及到了各行各業,計算機信息化技術已經在全球范圍內廣泛使用,軟件是計算機虛擬化技術的體現,不能通過傳統的工業檢測手段進行測試。軟件系統的穩定性直接關系到使用者的切身利益,尤其是在一些特殊行業,如金融、銀行、企事業單位等等,這些領域中使用的軟件系統直接與經濟利益掛鉤,一旦軟件運行出現故障,會直接導致公共利益損失,除此之外,一些不法分子也會利用軟件系統的缺陷進行蓄意破壞,因此,軟件質量檢測已經成為了計算機信息化建設的主要挑戰之一。軟件測試技術的運用可以最大限度的減少軟件系統的故障率,保證軟件的正常運行,提高軟件系統的穩定性,同時軟件檢測技術會對計算機硬件系統與軟件系統的兼容性進行評估,保證軟硬件的良好配合。
1 軟件測試技術簡介與技術內涵
1.1 軟件測試技術的概念
根據軟件系統的功能要求編制特定的方案與流程對軟件進行測試,測試的指標包括軟件的性能以及軟件的穩定性,在某些特殊的軟件系統測試中,需要根據軟件的性能進行編程,進行特殊的測試項目,對軟件系統測試完成后,需要對測試的結果進行分析與評估,總結軟件系統中的漏洞與缺陷,并將這些參數編成測試說明書,以便程序設計者根據結果進行相應的修改。常規的軟件測試技術主要包括以下幾項測試指標:軟件的精確性(主要對軟件計算的結果進行統計分析)、容錯性、效率(單位時間內計算的次數)以及易用性。
軟件測試技術對計算機信息系統的發展起著重要的作用,尤其是一些大型的軟件系統,必須嚴格的控制各個環節運行的穩定性,否則,會引起鏈式反應,導致整個系統的崩潰。軟件系統的底層就是各種程序,程序具有極強的邏輯性與關聯性,代碼中的任何一條指令的錯誤都會導致計算機無法識別。軟件的開發都有一定的周期性,沒有不存在缺陷的軟件,軟件是人思維的產物,而人的思維是具有局限性的,這些局限性會體現在軟件的漏洞上,以微軟公司的windows操作系統為例,隨著人對計算機系統的人機交互性有了越來越高的要求,系統的底層開發也更加復雜,已經由原有的十幾個模塊發展成上萬個模塊,這些軟件模塊的開發就體現出了程序的生命周期。同樣的設計放在90年代也許是先進的軟件系統,而放在今天可能就存在各種漏洞,因此,軟件測試技術對軟件工程的發展起著重要的初進作用。
1.2 軟件測試技術的內涵
目前,世界上主流的測試技術主要分為白盒測試技術與黑盒測試技術兩大類,黑盒與白盒本身就是兩組相對的概念,下面分別對兩組技術進行具體的介紹。
1.2.1 白盒測試技術
白盒測試技術是在已知程序的源代碼的情況下進行測試,測試的內容就是程序的每一句代碼,判斷代碼的正確性,同時,根據程序模塊的結構進行測試,判斷模塊之間的聯系是否正確,白盒測試技術的具體操作如下:確保每條程序運行一次;確保每個程序模塊運行一次;確保程序的邊界條件運行準確;確保軟件內部的結構合理。
1.2.2 黑盒測試技術
黑盒測試技術與白盒測試技術恰恰相反,黑盒測試技術的假設條件是不知道軟件的源代碼,只了解軟件產品的輸出與功能。通過對軟件的輸出以及功能進行直接測試,研究軟件運行的效率與準確性。黑盒測試技術的主要測試端就是軟件設計給出的外部接口,通過對軟件的輸出數據采集,可以直觀的分析軟件系統的穩定性,同時可以保證外部數據的完整性。黑盒測試的關注點與白盒子技術相反,黑盒子測試技術直接將軟件看成了一個整體,僅僅通過結果進行分析,這也是黑盒子技術應用比較廣泛的原因之一。
2 軟件測試技術的應用與優勢
2.1 降低成本,提升質量
軟件測試技術通過數據采集以及測試分析,對軟件系統的性能已經速率進行準確的評估,幫助設計人員找出軟件存在的漏洞與問題,提高設計人員的開發效率,同時,可以幫助使用者評估軟件產品的安全等級。軟件測試技術可以幫助軟件系統的設計人員了解項目中的問題,提高了軟件系統的整體質量,降低了軟件開發成本,有利于提高軟件系統的核心競爭力。
2.2 提高軟件安全等級
計算機信息技術的發展迅猛,已經發展出了很多功能全面、結構復雜的軟件產品,這些龐雜的系統帶來了大量的網絡安全隱患,軟件測技術可以提高軟件的穩定性,保證網絡通信與計算機數據庫的安全,同時,軟件測試技術還可以促進軟件基礎設施的發展。計算網絡的快速發展給軟件系統帶來了更大的挑戰,計算機網絡呈現的開放性,導致計算機網絡更加的依賴軟件的維護。軟件測試技術可以驗證軟件是否達標,確保網絡底層的軟件產品的功能、性能等要素。同時,網絡也需要具備一定的軟件檢測能力,判斷軟件的安全性,保證軟件純凈安全。
3 軟件測試技術的現狀與發展趨勢
3.1 我國軟件測試技術的現狀
經過數十年的發展,我國的軟件測試技術已經取得了巨大的進步,軟件測試技術的發展已經極大的提高了我國軟件系統的質量,同時,軟件檢測技術正在實現與網絡的無縫鏈接,促進了檢測系統的智能化,以云測試技術為例,現有的云測試技術建立在豐富的網絡資源的基礎上,整合了現有的軟件檢測技術,提高了軟件檢測的精度與效率,再比如,基于單片機的嵌入式軟件測試技術,可以實現軟件的離線檢測,增加了軟件檢測的靈活性,這些新興的軟件測試技術可以最大限度的改善軟件質量,實現軟系統的質量監控。
3.2軟件測試技術的發展趨勢
3.2.1 多領域測試
我國軟件測試技術的專業性不強,很多領域的軟件測試技術的針對性不強,實際的軟件測試技術應用范圍比較局限,這是我國軟件測試技術的缺陷。同時也是我國軟件測試技術的發展方向,未來的軟件測試技術將滲透進入各個工程領域,實現大范圍的檢測應用。
3.2.2 標準化測試
軟件測試技術標注化是軟件工程的實際需求,實現軟件測試技術的標準化,將有利于軟件檢測的流程化,提高軟件測試的效率,降低軟件測試的成本。在不影響軟件功能與結構的情況下,對代碼編寫進行規范,有利于簡化軟件內部檢測流程,提高故障定位速率。
3.2.3 智能化測試
智能化生產已經成為21世紀工業發展的主題,軟件測試技術的智能化,可以減少人力成本,軟件系統本身就是人工智能的體現,軟件測試技術的智能化是對軟件工程的進一步深化,保證軟件運行性能的同時,提高了軟件檢測效率。
4 結語
只有針對具體的軟件系統選擇合適的軟件測試技術,才能保證軟件檢測的質量,提高軟件測試的效率,本文深入的研究分析了我國軟件測試技術的應用以及現狀,探討軟件測試技術的發展趨勢,為我國軟件測試技術的發展提供了參考。
參考文獻:
[1] 何梅.黑盒測試技術在雷達軟件系統測試中的應用[J].信息化研究.
2009(04):41-44.
[2] 劉騰.軟件測試技術與自動化測試框架模型的研究與應用[J].電腦知識與技術.2009(26):7428-7431.
[3] 馮玉才,唐艷,周淳.關鍵字驅動自動化測試的原理和實現[J].計算機應用.2004(08):140-142.