Rational Rose測試解決方案

作爲軟件開 發人員,您必須非常高效地滿足不斷增長的軟件質量需求。許多 IT 專業人員還在繼續花費很多時間重複手動地進行解決方案的軟件測試和進行缺陷跟蹤。我們必須採用軟件測試中的新方法,將熟練的 IT 專業人員從這些重複的任務中解放出來,並且將測試自動化的層次提升到更高的高度上。我們必須利用更好的工具來支持這些軟件測試活動,並且通過將軟件測試工 件進行有效管理,讓開發人員交付更高的生產力。

    本文章包含了關於軟件測試方面的理論和最佳實踐,還包含了有關如何利用 IBM Rational 測試工具進行 IT 解決方案的質量測試和質量保證方面的指南和文檔,可以大大地簡化面向服務的體系結構(Service-Oriented Architecture,SOA)的測試 —— 形成了生產力上的重大提高。

    您可以利用 IBM Rational 軟件自動化測試工具進行軟件測試和測試資產的有效管理。並告訴我們您對Rational 測試解決方案的想法。

    傳統軟件測試

    隨着新的商業挑戰的日益增多以及技術複雜性的提高,很顯然,測試在關鍵業務型應用程序的成功中起到了舉足輕重的作用。所有團隊成員都應將質量視作頭等大 事。在軟件開發過程中,一方面要求我們通過測試活動驗證所開發的軟件在功能上滿足軟件需求中描述的每一條特性,性能上滿足客戶要求的負載壓力和相應的響應 時間、吞吐量要求;另一方面,面向市場和客戶,開發團隊還要滿足在預算範圍內儘快發佈軟件的要求。

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

    問題一:項目進度難於控制,項目管理難度加大

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

    問題二:對於項目風險的控制能力較弱

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

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

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

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

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

    儘早測試

    所謂儘早測試是指在整個軟件開發生命週期中通過各種軟件工程技術儘量早的完成各種軟件測試任務的一種思想。軟件的整個測試生命週期是與軟件的開發生命週期 基本平齊的過程,即當需求分析基本明確後我們就應該基於需求分析的結果和整個項目計劃來進行軟件的測試計劃;伴隨着分析設計過程同時應該完成測試用例的設 計;當軟件的第一個發佈出來後,測試人員要馬上基於它進行測試腳本的實現,並基於測試計劃中的測試目的執行測試用例,對測試結果進行評估報告。這樣,我們 可以通過各種測試指標實時監控項目質量狀況,提高對整個項目的控制和管理能力。

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

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

    連續測試

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

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

    自動化測試

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

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

    IBM Rational 軟件測試流程

 

 

    IBM Rational 的軟件測試流程,不僅僅包含完整的軟件測試流程框架,同時還提供了內嵌軟件測試流程的測試管理工具的支持。IBM Rational 統一過程(RUP,Rational Unified Process)提供了一套完整的測試流程框架,軟件測試團隊可以以它爲基礎,根據業務發展的實際要求,定製符合團隊使用的軟件測試流程。

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

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

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

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

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

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

    IBM Rational 軟件自動化測試工具

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

發佈了29 篇原創文章 · 獲贊 10 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章