軟件測試工具發展展望
作者:網絡轉載 發布時間:[ 2011/3/22 14:41:00 ] 推薦標簽:
軟件測試是軟件工程中的一個重要過程,也是保證軟件質量的重要手段。隨著軟件測試的地位在軟件開發過程中逐步提高,重要性逐步顯現,測試工具的應用也已經成為了普遍的趨勢。目前用于測試的工具比較多,基本上覆蓋了整個測試周期。其中國際主流的HP系列測試工具、IBM系列測試工具、Segue系列測試工具及Compuware系列測試工具占據了市場的90%以上。按照測試方法及測試目的,我們可以將測試工具分為白盒測試工具、黑盒測試工具、測試管理工具等。
白盒測試工具一般是針對被測源程序進行的測試,測試所發現的故障可以定位到代碼級。根據測試工具工作原理不同,白盒測試的自動化工具可分為靜態測試工具和動態測試工具。
目前普遍使用的該類測試工具主要有Parasoft公司的Jtest、Jcontract、C++ Test,Compuware公司的BoundsChecker、TrueTime、FailSafe等,這類工具可以對C/ C + +、Java 等語言的軟件源代碼進行靜態分析,內置標準的編碼規則檢查,以及功能確認、接口測試、覆蓋率分析、性能分析等。
黑盒測試工具適用于黑盒測試的場合,黑盒測試工具包括功能測試工具和系統測試工具。黑盒測試工具的一般原理是利用腳本的錄制和回放,模擬用戶的操作,然后將被測系統的輸出記錄下來同預先給定的標準結果比較。黑盒測試工具可以大大減輕黑盒測試的工作量,在迭代開發的過程中,能夠很好地進行回歸測試。
目前常見的功能測試工具有HP公司的Winrunner、QuickTest Professional,IBM公司的Rational Functional Tester,Segue公司的SilkTest,Compuware公司的QARun等,這類工具主要為用戶提供了符合所有主要應用軟件環境的功能測試和回歸測試的自動化測試功能。常見的性能測試工具有HP公司的LoadRunner,IBM公司的Rational Performance Tester,Segue公司的SilkPerformer,Compuware公司的QALoad等,這類工具主要通過模擬上千萬用戶實施并發負載及實時性能監測的方式來確認和查找問題,幫助測試人員和性能工程師驗證系統的性能。
測試管理工具主要用于對測試進行管理。一般而言,測試管理工具對測試計劃、測試用例、測試實施進行管理,并且,測試管理工具還包括對缺陷的跟蹤管理。
常用的測試管理工具主要有HP公司的Quality Center、IBM公司的Rational Test Manager,Segue公司的SilkCentral Test Manager等。
除了上述測試工具外,還有一些專用的測試工具,例如,針對數據庫測試的TestBytes,對應用性能進行優化的EcoScope等。
近年來,隨著測試技術的逐步發展,加上測試工作者及測試廠商的努力,測試工具在軟件行業中得到了較為廣泛的應用。在2009年下半年由工業和信息化部組織的范圍內對軟件企業所進行的調研數據來看,80%以上的軟件企業都使用了自動化測試技術。雖然軟件測試工具得到了很大的發展,但工具的使用情況來看,目前大多數公司是使用性能測試工具進行性能測試。由于國內的軟件開發過程不是很規范,軟件產品相對不夠成熟,大多數軟件往往不具備自動化功能測試工具應用的條件。因此,功能測試工具大規模的應用還需要一定的時間。
據山東省軟件評測中心多年科研及實踐分析,未來軟件測試工具發展將呈現以下趨勢:傳統的軟件測試生命周期仍在指導著當前軟件測試的組織和實施,人們對于軟件測試過程模型的研究并沒有革命性的改變,自動化測試從技術到工具還沒有取得與其宣傳相匹配的實際功效。如何解決“完善的測試用例、更快的開始并結束測試、更多的報告軟件缺陷”這些問題之間的關系,這將是未來測試技術發展的重點。在此基礎上,現有的測試工具也將進行更新換代。下一代的測試工具應當提供怎樣的功能?它們需要內嵌高級的測試編輯器,并通過這個編輯器來支持界面測試的自動完成功能以及測試代碼的重構和分析么?它需要將測試結果可視化么? 或者以自學習的方式來生成測試用例?
除此之外,隨著軟件行業的不斷發展,大量的新技術在軟件開發中得到應用,為了滿足日益復雜的軟件系統的測試需要,軟件測試技術也隨之不斷的發展,越來越系統化,越來越專業化,同時軟件測試工具也將在以下方面得到進一步的發展:
分布式測試工具:隨著網絡技術的不斷發展,大量分布式系統被部署在網絡中,常見的如Web應用、Web Service等。分布式系統不同于一般軟件系統,它通常由物理分布的多個子系統組成,這些子系統通過相互間的協作完成計算任務,具有物理分布、并發訪問、時序敏感、平臺異構等特點。此外,分布式系統中的諸多子系統在觸發方式、工作方式等方面往往也不屬于同一類型,比如,通過網絡協議傳遞消息的子系統和利用本地接口進行方法調用的子系統等。 因此,對分布式系統的測試也不同于一般軟件系統的測試,需要采用分布式測試工具。隨著越來越多的領域活動依賴于分布式應用,分布式測試將受到人們更大的關注,測試系統實現技術也將不斷發展成熟,分布式測試工具將成為下一步測試工具的重點發展方向。
云測試工具:云測試是基于云計算的一種新型測試方案,云計算通過網絡以按需、易擴展的方式向用戶交付所需的資源,包括基礎設施、應用平臺、軟件功能等服務。作為軟件測試工具(包括功能測試工具、性能測試工具等)服務商提供的測試平臺,軟件開發企業在其平臺上進行相關自動化測試、不再在本地計算機上安裝和使用這些工具。這種無須本地安裝和配置測試環境,在遠程測試平臺上進行測試的方式被稱作云測試。目前云測試平臺還處于實驗階段,隨著云計算技術的逐步發展,云測試技術也將不斷發展完善。
安全性測試工具:安全性測試工具以自動化或半自動化的方式驗證系統安全功能運行是否正確、安全機制是否有效和查找潛在的安全漏洞。隨著計算機網絡的迅速發展和軟件的廣泛應用,軟件的安全性己經成為備受關注的一個方面,漸漸融入我們的生活,成為關系到金融、電力、交通、醫療、政府以及軍事等各個領域的關鍵問題。軟件安全漏洞造成的重大損失以及還在不斷增長的漏洞數量使人們已經開始深刻認識到軟件安全的重要性。隨著安全性測試技術的深入研究,安全性測試工具也將是測試工具的重點發展方向。
相關推薦

最新發布
性能測試之測試環境搭建的方法
2020/7/21 15:39:32軟件測試是從什么時候開始被企業所重視的呢?
2020/7/17 9:09:11Android自動化測試框架有哪些?有什么用途?
2020/7/17 9:03:50什么樣的項目適合做自動化?自動化測試人員應具備怎樣的能力?
2020/7/17 8:57:06幾大市面主流性能測試工具測評
2020/7/17 8:52:11RPA機器人能夠快速響應企業需求,是怎么做到的?
2020/7/17 8:48:05Bug可以真正消滅嗎?為什么?
2020/7/17 8:43:03軟件測試基本概念是怎么來的?軟件測試生命周期的形成歷經了什么?
2020/7/16 9:11:10