軟件測試 方面的理念以及 Ratioanl 的測試產品方案,你可以了解到如何 使用 IBM Rational 的測試理念成功打造測試團隊。 1." name="description" />

使用IBM Rational的測試理念成功打造測試團隊

發表于:2007-04-29來源:作者:點擊數: 標簽:ibm測試rational理念成功
文本講述了 IBM Rational 在 java script:;" onClick="javascript:tagshow(event, '%C8%ED%BC%FE%B2%E2%CA%D4');" target="_self"> 軟件測試 方面的理念以及 Ratioanl 的測試產品方案,你可以了解到如何 使用 IBM Rational 的測試理念成功打造測試團隊。 1.
 文本講述了 IBM Rationaljavascript:;" onClick="javascript:tagshow(event, '%C8%ED%BC%FE%B2%E2%CA%D4');" target="_self">軟件測試方面的理念以及 Ratioanl 的測試產品方案,你可以了解到如何 使用 IBM Rational 的測試理念成功打造測試團隊。

1. 傳統軟件測試過程中的問題

    測試在所有的軟件開發過程中都是最重要的部分。在軟件開發過程中,一方面要求我們通過測試活動驗證所開發的軟件在功能上滿足軟件需求中描述的每一條特性,性能上滿足客戶要求的負載壓力和相應的響應時間、吞吐量要求;另一方面,面向市場和客戶,開發團隊還要滿足在預算范圍內盡快發布軟件的要求。

    傳統的軟件測試流程一般是先在軟件開發過程中進行少量的單元測試,然后在整個軟件開發結束階段,集中進行大量的測試,包括功能和性能的集成測試系統測試。隨著開發的軟件項目越來越復雜,傳統的軟件測試流程不可避免地給我們的工作帶來以下問題:

問題一:項目進度難于控制,項目管理難度加大
如圖一所示,大量的軟件錯誤往往只有到了項目后期系統測試時才能夠被發現,解決問題所花的時間很難預料,經常導致項目進度無法控制,同時在整個軟件開發過程中,項目管理人員缺乏對軟件質量狀況的了解和控制,加大了項目管理難度。

figure1
圖一、傳統測試流程中存在的問題

問題二:對于項目風險的控制能力較弱
項目風險在項目開發較晚的時候才能夠真正降低。往往是經過系統測試之后,才真正確定該設計是否能夠滿足系統功能、性能和可靠性方面的需求。

問題三:軟件項目開發費用超出預算

在整個軟件開發周期中,錯誤發現的越晚,單位錯誤修復成本越高,如圖二所示,錯誤的延遲解決必然導致整個項目成本的急劇增加。

figure2

圖二、傳統測試流程中存在的問題


2. 采用IBM Rational軟件自動化測試最佳成功經驗解決傳統測試問題

    IBM Rational軟件自動化測試技術核心的三個最佳成功經驗是:盡早測試、連續測試、自動化測試,并在此基礎上提供了完整的軟件測試流程和一整套的軟件自動化測試工具,使我們最終能夠做到:一個測試團隊,基于一套完整的軟件測試流程,使用一套完整的自動化軟件測試工具,完成全方位的軟件質量驗證。

2.1 成功經驗一:盡早測試

    所謂盡早測試是指在整個軟件開發生命周期中通過各種軟件工程技術盡量早的完成各種軟件測試任務的一種思想。IBM Rational主要在以下三個方面為我們提供的盡早測試的軟件工程技術:

    首先,軟件的整個測試生命周期是與軟件的開發生命周期基本平齊的過程,如圖三所示,即當需求分析基本明確后我們就應該基于需求分析的結果和整個項目計劃來進行軟件的測試計劃;伴隨著分析設計過程同時應該完成測試用例的設計;當軟件的第一個發布出來后,測試人員要馬上基于它進行測試腳本的實現,并基于測試計劃中的測試目的執行測試用例,對測試結果進行評估報告。這樣,我們可以通過各種測試指標實時監控項目質量狀況,提高對整個項目的控制和管理能力。

figure3

圖三、軟件測試生命周期

    其次,通過迭代是軟件開發把原來的整個軟件開發生命周期分成多個迭代周期,在每個迭代周期都進行測試,這樣在很大程度上提前了軟件系統測試發生的時間,這可以在很大程度上降低項目風險和項目開發成本。

    最后,IBM Rational的盡早測試成功經驗還體現在它擴展了傳統軟件測試階段從單元測試、集成測試到系統測試、驗收測試的劃分,將整個軟件的測試按階段劃分成開發員測試和系統測試兩個階段,如圖四所示,它把軟件的測試責無旁貸地擴展到整個開發人員的工作過程。通過提前測試發生的時間來盡早地提高軟件質量、降低軟件測試成本。

figure4

圖四、IBM Rational測試方法對測試階段的劃分

2.2 成功經驗二:連續測試

    測試成功經驗連續測試是從迭代式軟件開發模式得來。在迭代化的方法中,我們將整個項目的開發目標劃分成為一些更易于完成和達到的階段性小目標,這些小目標都有一個定義明確的階段性評估標準。迭代就是為了完成一定的階段性目標而從事的一系列開發活動,在每個迭代開始前都要根據項目當前的狀態和所要達到的階段性目標制定迭代計劃,而且每個迭代中都包括需求、設計、編碼、集成、測試等一系列的開發活動,都會增量式集成一些新的系統功能。通過每次迭代,我們都產生一個可運行的系統,通過對于這個可運行系統的測試來評估該次迭代有沒有達到預定的迭代目標,并以此為依據來制定下一次迭代的目標。由此可見,在迭代式軟件開發的每個迭代周期我們都會進行軟件測試活動,整個軟件測試的完成是通過每個迭代周期不斷增量測試和回歸測試實現的。

如圖五所示,采用連續測試的軟件成功測試經驗,不但能夠持續的提高軟件質量、監控質量狀態,同時也使系統測試的盡早實現成為可能。從而有效的控制開發風險、減低測試成本和保證項目進度。

figure5

圖五、IBM Rational測試成功經驗:連續測試

2.3 成功經驗三:自動化測試

    在整個軟件的測試過程中要想實現盡早測試、連續測試,可以說完善的測試流程是前提,自動化測試工具是保證。IBM Rational的自動化測試成功經驗主要是指利用軟件測試工具提供完整的軟件測試流程的支持和各種測試的自動化實現。

    為了使各種軟件測試團隊更好地進行測試,IBM Rational在提供了測試成功經驗之外,還為我們提供了一整套的軟件測試流程和自動化測試工具,使軟件測試團隊能夠從容不迫地完成整個測試任務。

3. IBM Rational軟件自動化測試工具

    在IBM Rational的軟件自動化測試解決方案中,我們一直致力追求的一點就是測試工具和測試成功經驗、測試流程的統一,上面闡述的每個測試成功經驗和測試流程環節,我們都可以通過Rational的測試工具以及工具間的完美集成輔助完成。

    IBM Rational的軟件自動化測試工具如圖七所示,其最大特點是通過一套完整的軟件測試工具在實現測試管理流程的基礎上,同時涵蓋了功能測試、性能測試和可靠性測試的自動化測試需求,通過工具之間的集成完成測試資源的整合,幫助測試團隊實現IBM Rational的測試成功經驗。

figure6

圖七、IBM Rational自動化測試工具


4. IBM Rational軟件測試流程

    IBM Rational的軟件測試流程,不僅僅包含完整的軟件測試流程框架,同時還提供了內嵌軟件測試流程的測試管理工具的支持。

4.1 IBM Rational軟件測試流程框架

    IBM Rational Unified Process(以下簡稱RUP)提供了一套完整的測試流程框架,軟件測試團隊可以以它為基礎,根據業務發展的實際要求,定制符合團隊使用的軟件測試流程。RUP中的軟件測試流程如圖六所示:

figure7

圖六、IBM Rational 軟件測試流程

每個測試環節的具體闡述如下:

制定測試計劃的目的是確定和描述要實施和執行的測試。這是通過生成包含測試需求和測試策略的測試計劃來完成的??梢灾贫ㄒ粋€單獨的測試計劃,用于描述所有要實施和執行的不同測試類型,也可以為每種測試類型制定一個測試計劃。

設計測試的目的是確定、描述和生成測試過程和測試用例。

實施測試的目的是實施(記錄、生成或編寫)設計測試中定義的測試過程。輸出工件是測試過程的計算機可讀版本,稱為測試腳本。

執行測試的目的是確保整個系統按既定意圖運行。系統集成員在各迭代中編譯并鏈接系統。每一迭代都需要測試增加的功能,并重復執行以前版本測試過的所有測試用例(回歸測試)。

評估測試的目的是生成并交付測試評估摘要。這是通過復審并評估測試結果、確定并記錄變更請求,以及計算主要測試評測方法來完成的。測試評估摘要以組織有序的格式提供測試結果和主要測試評測方法,用于評估測試對象和測試流程的質量。

4.2 利用IBM Rational軟件測試管理平臺實現軟件自動化測試流程

    IBM Rational在RUP測試方法論的基礎上構建了軟件自動化測試管理平臺工具TestManager,通過和測試需求管理工具RequisitePro、缺陷追蹤工具ClearQuest的完美集成,實現了對整個軟件測試生命周期的管理,可以幫助軟件測試團隊快速建立軟件測試平臺和測試管理流程,使軟件測試團隊快速擁有以下能力:

    TestManager提供測試管理的核心平臺,整合了從測試需求、測試計劃、測試設計、測試實施、測試執行到測試結果分析、測試報告的自動生成等整個測試生命周期的管理活動。同時,統一組織各種Test Suite,Test Case,Test Script,方便地進行回歸測試。 

    TestManager遵循RUP標準測試流程,使測試人員能夠在統一的測試管理平臺上、遵循統一的測試管理流程,完成對包括產品的功能性、可靠性和性能等全方位的質量測試。

    作為一種集成解決方案,Rational TestManager與Rational 其他工具一起,提供從測試需求、到整個軟件測試流程管理、缺陷追蹤、測試結果評測的可追蹤性,方便測試管理人員進行軟件測試過程監控和有關軟件質量的各種量化指標的采集、分析。

4.3 利用IBM Rational軟件測試工具實現軟件自動化的功能和性能測試

    IBM Rational的自動化軟件測試工具的另一個特點就是:通過TestManager + Robot');" target="_self">Robot,在實現測試管理流程的同時,能夠完成功能測試和性能測試,這會大大縮短測試團隊對工具的學習過程,提高工具的易用性。

4.3.1 軟件的自動化功能測試

功能測試主要圍繞Windows圖形界面、字符終端和Browser界面進行測試??蛻舳丝梢允荲C、VB、PB、Delphi等編制的軟件、各種字符終端軟件或者運行瀏覽器Microsoft Explorer和Netscape,通過自動錄制形成測試腳本實現自動化的功能/回歸測試。

IBM Rational的功能測試解決方案的目標,是使功能性測試變得更簡單、有效并可重復執行,從而快速提升軟件測試團隊的功能測試能力。它主要具有以下特點:

能夠方便的對各種環境(IDE)中開發的應用程序、字符終端軟件,完成包括測試計劃、測試設計、測試實施、測試執行和測試結果分析等全部測試流程。
能夠方便的錄制或編寫各種功能測試腳本,實現自動化的功能/回歸測試。
利用數據池方便地解決大批量數據驅動的功能測試;
能夠方便地完成分布式功能測試,可以一次測試多種測試平臺;
能夠自動完成功能測試需求覆蓋,確保應用程序滿足產品規格說明和測試計劃的每一條業務需求;
為了提高對JavaWeb開發的應用軟件功能測試的支持,IBM Rational的功能測試的解決方案還提供了IBM Rational XDE Tester,它主要用于在WindowsLinux');" target="_self">Linux平臺上基于Java和Web開發的應用軟件的功能測試,尤其適用于使用IBM WebSphere Studio、Eclipse和 Rational XDE Developer等開發平臺進行軟件開發的團隊。它的三個最重要的自動化測試的特性是:

專業的自動化測試腳本創建環境:測試平臺擴展嵌入到IBM WebSphere Studio、Eclipse和 Rational XDE Developer開發平臺,統一了測試和開發環境;
測試腳本在回歸測試方面具有很強的靈活性和可維護性:ScriptAssure是 IBM提供的針對 Java 和Web應用程序測試時的一組高級能力, 它能夠幫助創建靈活、可重用的測試腳本,大大提高了腳本的可維護性。對象地圖(Object mapping)提供了核心對象庫,測試人員可以基于它進行被測程序中被測對象的修改和驗證,并根據修改自動更新所有相關的測試腳本??梢宰约涸O置被測程序中用來表示被測對象的對象屬性集,這使得少量對象屬性的變化不會影響測試腳本的正?;胤?。同時,可以創建針對動態數據的驗證點,通過正則表達式更容易對動態的數據進行驗證;
強大的測試腳本語言:使用標準的測試腳本語言Java,可以充分利用工業標準語言的優點進行測試。

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 利用IBM Rational軟件測試工具實現實時系統軟件的自動化測試

    IBM Rational Test Realtime主要適合于開發實時系統和具有較高要求的非實時系統的軟件開發,可以幫助測試團隊快速建立起單元測試、集成測試、系統測試等測試能力。它提供的自動測試(包括單元測試、集成測試、系統測試)、代碼覆蓋、內存泄漏檢查、性能分析以及UML跟蹤等重要特性,幫助軟件測試團隊在系統崩潰前發現并修復軟件缺陷。其主要功能特性如下:

自動生成測試腳本模板和測試程序(包括驅動模塊和樁模塊):通過源代碼分析,自動生成在目標上運行所需的測試腳本和測試程序。除了利用測試腳本指定測試數據外,不需要手工編碼。而且在測試報告中,測試結果和源代碼相聯,簡化代碼修改;
通過代碼自動插針進行代碼覆蓋率、內存泄漏以及性能瓶頸進行分析,并和測試用例建立關聯;
通過把測試結果和觀察結果和被測代碼關聯,把測試作為開發的一個重要部分,真正實現邊開發邊測試,邊測試邊觀察,邊觀察邊評估這一集成的開發測試過程;
通用的、低開銷而且易于移植的目標適配技術(Target Deployment Port,TDP):利用TDP技術,使得測試與編譯器、連接器、調試器以及目標結構無關,實現了跨多開發環境、多目標結構;
模型觀察和代碼覆蓋相集成:利用UML Trace功能觀察應用運行狀態,并通過狀態機模型覆蓋實現測試用例和模型的關聯,充分利用了模型和代碼級測試的長處;
與ClearCase、ClearQuest和RUP集成:在同一集成環境中完成對測試文件進行版本控制,提交和修改變更請求;

5. 小結

    IBM Rational主要為軟件測試團隊提供測試成功經驗、自動化測試工具和全方位的咨詢服務三方面的支持,如圖八所示,最終實現:一個測試團隊,基于一套完整的軟件測試流程,使用一套完整的自動化軟件測試工具,完成全方位的軟件質量驗證,這正是IBM Rational測試解決方案的精髓和終極目標


原文轉自:http://www.anti-gravitydesign.com

...

熱門標簽

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97