先說軟件測試行業的劃分,一是黑盒測試或者叫功能測試、手動測試,二是白盒測試或者測試開發等。黑盒測試,含金量低,測試人員學的測試工具較少。白盒測試,現在軟件行業越來越重視白盒測試,白盒測試要求會寫代碼,通常只是寫一些腳本或者開發測試工具,Python、Shell、Perl常用于寫測試腳本,當然如果公司內部以Java為主要編程語言的話,還是得學習java,總而言之就是,至少學習一門編程語言。
根據不同階段的測試,對應有不同的測試方法以及測試工具。基本的測試工具包括:測試設計工具、靜態分析工具、單元測試工具、功能測試工具、性能測試工具和測試過程管理。
下面我說一下為何要用這些工具。
首先是測試設計工具,此種工具主要是用于測試用例的設計。它又分為兩類;分別是基于代碼的測試用例設計工具,它主要是讀入程序源文件,對其中的代碼結構進行分析,之后產生測試輸入數據進行測試;另一個是基于需求說明的測試用例設計工具。它首先把需求說明轉化成工具所能理解的格式,之后由工具對轉化后的需求說明進行分析,生成測試用例。
第二個是靜態分析工具,它是對程序代碼本身進行測試,它通過檢查代碼對程序的數據流和控制流信息進行分析,找出系統缺陷,同時可以檢查出代碼中命名不規范的地方。
第三個是單元測試工具,它主要通過模擬程序的輸入和預期結果進行比對,來提高程序的質量,它一般在一個單元的開發完成之后,由開發者自行對模塊進行單元測試。它是提高軟件質量的基石。
第四個是功能測試自動化工具,它是回歸測試所主要用到的工具,通過它的腳本錄制和回放功能可以大大減輕測試人員的工作量,此外它還具有可編程行和檢驗功能,使得測試起來更加靈活。
典型的功能測試自動化工具有:Rational Robot,功能測試自動化工具的使用主要步驟包括:準備錄制、進行錄制、編輯測試腳本、調試腳本、回歸測試中運行、分析結果、報告問題。
第五個是性能測試工具,它是為了模擬軟件實際工作中所可能產生的高并發、不穩定的網絡帶寬、有限的服務器資源等環境。
性能測試也叫做壓力測試或容量測試。它的測試內容主要包括:系統的相應時間、事務處理速度以及和時間敏感的需求。
第六個是測試過程管理工具,它貫穿了整個軟件測試過程,包括制定測試計劃、測試用例設計、測試執行、缺陷跟蹤等。它管理整個測試過程中所產生的文檔、數據統計、版本信息等。此類管理工具一般采用WEB系統,因為它易于訪問修改,便于團隊之間的溝通協作。
所以說借助這些測試工具不僅可以提高我們的測試效率,而且能夠更加有效的組織管理整個軟件的測試流程。換句話說使用測試工具可以讓我們少加很多班。