IBM Rational的自動化軟件測試工具的另一個特點就是:通過TestManager + Robot,在實現測試管理流程的同時,能夠完成功能測試和性能測試,這會大大縮短測試團隊對工具的學習過程,提高工具的易用性。
4.3.1 軟件的自動化功能測試
功能測試主要圍繞Windows圖形界面、字符終端和Browser界面進行測試?蛻舳丝梢允荲C、VB、PB、Delphi等編制的軟件、各種字符終端軟件或者運行瀏覽器Microsoft Explorer和Netscape,通過自動錄制形成測試腳本實現自動化的功能/回歸測試。
IBM Rational的功能測試解決方案的目標,是使功能性測試變得更簡單、有效并可重復執行,從而快速提升軟件測試團隊的功能測試能力。它主要具有以下特點:
能夠方便的錄制或編寫各種功能測試腳本,實現自動化的功能/回歸測試。
利用數據池方便地解決大批量數據驅動的功能測試;
能夠方便地完成分布式功能測試,可以一次測試多種測試平臺;
能夠自動完成功能測試需求覆蓋,確保應用程序滿足產品規格說明和測試計劃的每一條業務需求;
為了提高對Java和Web開發的應用軟件功能測試的支持,IBM Rational的功能測試的解決方案還提供了IBM Rational XDE Tester,它主要用于在Windows和Linux平臺上基于Java和Web開發的應用軟件的功能測試,尤其適用于使用IBM WebSphere Studio、Eclipse和 Rational XDE Developer等開發平臺進行軟件開發的團隊。它的三個最重要的自動化測試的特性是:
專業的自動化測試腳本創建環境:測試平臺擴展嵌入到IBM WebSphere Studio、Eclipse和 Rational XDE Developer開發平臺,統一了測試和開發環境;
測試腳本在回歸測試方面具有很強的靈活性和可維護性:ScriptAssure是 IBM提供的針對 Java 和Web應用程序測試時的一組高級能力, 它能夠幫助創建靈活、可重用的測試腳本,大大提高了腳本的可維護性。對象地圖(Object mapping)提供了核心對象庫,測試人員可以基于它進行被測程序中被測對象的修改和驗證,并根據修改自動更新所有相關的測試腳本?梢宰约涸O置被測程序中用來表示被測對象的對象屬性集,這使得少量對象屬性的變化不會影響測試腳本的正;胤。同時,可以創建針對動態數據的驗證點,通過正則表達式更容易對動態的數據進行驗證;
4.3.2 軟件的自動化壓力測試
IBM Rational壓力測試工具主要目標是快速提升軟件測試團隊的性能測試能力,包括負載測試,壓力測試等等。Rational性能測試解決方案可以方便靈活地模擬各種負載模型,完成以查找響應時間瓶頸、系統吞吐量、最大并發虛擬用戶等為目地的各種要求的性能測試。包括:
利用TestStudio可以完成對壓力測試的測試需求、測試計劃、測試設計、測試實施、測試執行和測試結果分析等整個測試生命周期的管理;
利用TestStudio中的Test Suite,能夠方便的完成壓力測試對負載模型的各種要求,包括:
建立復雜的Scenario模型; 準確模擬復雜負載的時序控制;
基于Transaction的負載分析;
建立面向目標的事務負載模型,例如:100事務/秒
響應時間精確到1/100秒;
支持不同虛擬用戶的不同IP地址模擬;
準確的波特率模擬;
利用TestStudio,能夠方便地完成壓力測試過程中各種指標的觀測;
利用TestStudio,能夠方便地完成壓力測試結果分析和各種結果報告的生成;
4.4 利用IBM Rational軟件測試工具實現軟件自動化的可靠性測試和單元測試
IBM Rational軟件測試工具PurifyPlus主要用于幫助軟件測試團隊在短期內快速提升單元測試能力和可靠性測試能力的團隊,其主要特點是:見效快、使用方便、門檻低、培訓時間短,開發人員2小時內即可完全掌握該軟件進行測試。PurifyPlus包含Rational Purify、Quantify和PureCoverage三個產品,主要功能如下:
Rational Purify主要針對軟件開發過程中難于發現的內存錯誤、運行時錯誤。在軟件開發過程中:
自動地發現錯誤;
準確地定位錯誤;
提供完備的錯誤信息;
從而減少了調試時間, 幫助開發團隊找出缺陷并最終形成高質量的產品,使您能真正做到更快地發布更好的軟件。
Rational Quantify主要解決軟件開發過程中的性能問題。在軟件開發過程中:
方便地查明并顯示應用程序的性能瓶頸,從而確保整個應用程序的質量和性能。
Rational Quantify 給開發團隊提供了一個性能數據的全局圖形化視圖,使您從開發流程的開頭起就注重性能問題,真正做到更快地發布更好的軟件。
Rational PureCoverage提供應用程序的測試覆蓋率信息。在軟件開發過程中:
能自動找出代碼中未經測試的代碼,保證代碼測試覆蓋率;
幫助開發人員確保開發質量,并使質量保證人員能夠評價測試工作的效果。
可針對每次測試生成全面的覆蓋率報告,可以歸并程序多次運行所生成的覆蓋數據,并自動比較測試結果,以評估測試進度。
4.5 利用Rational軟件測試工具實現實時系統軟件的自動化測試
IBM Rational Test Realtime主要適合于開發實時系統和具有較高要求的非實時系統的軟件開發,可以幫助測試團隊快速建立起單元測試、集成測試、系統測試等測試能力。它提供的自動測試(包括單元測試、集成測試、系統測試)、代碼覆蓋、內存泄漏檢查、性能分析以及UML跟蹤等重要特性,幫助軟件測試團隊在系統崩潰前發現并修復軟件缺陷。其主要功能特性如下:
自動生成測試腳本模板和測試程序(包括驅動模塊和樁模塊):通過源代碼分析,自動生成在目標上運行所需的測試腳本和測試程序。除了利用測試腳本指定測試數據外,不需要手工編碼。而且在測試報告中,測試結果和源代碼相聯,簡化代碼修改;
通過代碼自動插針進行代碼覆蓋率、內存泄漏以及性能瓶頸進行分析,并和測試用例建立關聯;
通過把測試結果和觀察結果和被測代碼關聯,把測試作為開發的一個重要部分,真正實現邊開發邊測試,邊測試邊觀察,邊觀察邊評估這一集成的開發測試過程;
通用的、低開銷而且易于移植的目標適配技術(Target Deployment Port,TDP):利用TDP技術,使得測試與編譯器、連接器、調試器以及目標結構無關,實現了跨多開發環境、多目標結構;
模型觀察和代碼覆蓋相集成:利用UML Trace功能觀察應用運行狀態,并通過狀態機模型覆蓋實現測試用例和模型的關聯,充分利用了模型和代碼級測試的長處;
5. 小結
圖九、IBM Rational的軟件自動化測試解決方案
IBM Rational主要為軟件測試團隊提供測試成功經驗、自動化測試工具和全方位的咨詢服務三方面的支持,如圖八所示,最終實現:一個測試團隊,基于一套完整的軟件測試流程,使用一套完整的自動化軟件測試工具,完成全方位的軟件質量驗證,這正是IBM Rational測試解決方案的精髓和終極目標。
作者簡介: