軟件測試是對創造力和智力非常有挑戰性的任務。測試一個大型軟件需要的智能要超過設計這個程序的智能。軟件在它發行之前應當通過徹底的測試,以保證它的可靠性和功能性,不幸的是,測試工程師要覆蓋一個大型程序的所有情況會感到太麻煩和太費時。確實,軟件的每個部分如能被分別測試到,同時一些指定的路徑也能被測試,這對總的軟件質量的保障是非常有效的。
一般的說,沒有測試覆蓋分析工具,軟件在發行前僅有50%的源程序被測試過。在差不多有一半源代碼沒有被測試的情況下,大量的故障(bug)隨軟件一道被發行出去。在這種情況下,軟件的質量、性能和功能不可能得到保障。此外,什么時候測試結束?或是否要對該程序作進一步的測試?對于測試工程師和測試管理人員來說是不知道的,通過引進測試覆蓋的概念,問題就可以得到解決。
項目測試管理
1.幫助軟件管理者準確地測算開發組的效率的,通過提供多層分析,包括系統/文件/類/函數的能力。
2.提供管理人員測算工程開發進度與質量分析的能力,允許在被生成的類繼承圖和函數調用圖上,直接反顯所有在規定的日期或一個小組/單個員工完成的模塊,在這些圖上帶有覆蓋在每個類/函數框上以條形圖方式顯示的相關質量信息,比如大小、復雜性、數據性能、代碼測試覆蓋等。
3. 結合軟件系統質量分析能力和系統開發管理能力,提供給管理人員的帶有質量數據的有關開發效率和工程開發進度信息總是即時的和精確的,因為它們是直接從源代碼得來的第一手信息。
軟件系統不僅變得越來越龐大,但是也變得越來越復雜。復雜的代碼是很難閱讀、理解和修改的;必須化更多的精力去測試、維護和再測試。測試復雜性分析能幫助軟件工程師容易并精確地去計劃他們的測試活動。 提供系統級復雜性分析和過程級復雜性分析去精確地測量復雜性,幫助工程師更好地計劃他們的測試活動。幫助工程師更好估計和使用測試復雜性度量,為滿足不同層次的測試覆蓋的要求,必需提供:塊測試復雜性、分支測試復雜性、段測試復雜性、條件-判定測試復雜性、條件-段測試復雜性。測試復雜性的值取決于用于記錄對應的測試覆蓋數據的插裝點的點數
軟件測試是對創造力和智力非常有挑戰性的任務。測試一個大型軟件需要的智能要超過設計這個程序的智能。軟件在它發行之前應當通過徹底的測試,以保證它的可靠性和功能性,不幸的是,測試工程師要覆蓋一個大型程序的所有情況會感到太麻煩和太費時。確實,軟件的每個部分如能被分別測試到,同時一些指定的路徑也能被測試,這對總的軟件質量的保障是非常有效的。
一般的說,沒有測試覆蓋分析工具,軟件在發行前僅有50%的源程序被測試過。在差不多有一半源代碼沒有被測試的情況下,大量的故障(bug)隨軟件一道被發行出去。在這種情況下,軟件的質量、性能和功能不可能得到保障。此外,什么時候測試結束?或是否要對該程序作進一步的測試?對于測試工程師和測試管理人員來說是不知道的,通過引進測試覆蓋的概念,問題就可以得到解決。
項目測試管理
1.幫助軟件管理者準確地測算開發組的效率的,通過提供多層分析,包括系統/文件/類/函數的能力。
2.提供管理人員測算工程開發進度與質量分析的能力,允許在被生成的類繼承圖和函數調用圖上,直接反顯所有在規定的日期或一個小組/單個員工完成的模塊,在這些圖上帶有覆蓋在每個類/函數框上以條形圖方式顯示的相關質量信息,比如大小、復雜性、數據性能、代碼測試覆蓋等。
3. 結合軟件系統質量分析能力和系統開發管理能力,提供給管理人員的帶有質量數據的有關開發效率和工程開發進度信息總是即時的和精確的,因為它們是直接從源代碼得來的第一手信息。
測試計劃
軟件系統不僅變得越來越龐大,但是也變得越來越復雜。復雜的代碼是很難閱讀、理解和修改的;必須化更多的精力去測試、維護和再測試。測試復雜性分析能幫助軟件工程師容易并精確地去計劃他們的測試活動。 提供系統級復雜性分析和過程級復雜性分析去精確地測量復雜性,幫助工程師更好地計劃他們的測試活動。幫助工程師更好估計和使用測試復雜性度量,為滿足不同層次的測試覆蓋的要求,必需提供:塊測試復雜性、分支測試復雜性、段測試復雜性、條件-判定測試復雜性、條件-段測試復雜性。測試復雜性的值取決于用于記錄對應的測試覆蓋數據的插裝點的點數。
測試用例管理
1. OO-Test提供了在國內外市場上最全面的測試覆蓋分析能力,去滿足不同的測試覆蓋需求:
●類的測試覆蓋
●函數的測試覆蓋
●塊的覆蓋
●循環邊界的覆蓋
●分支的覆蓋
●段的覆蓋
●條件(判定)的覆蓋
●段--條件的覆蓋
2.TCA能確定每一個測試用例作用的范圍,通過給出的測試用例就能確定被測試的類,或函數,或段。這種功能對于評估測試用例的效率,和對于修改以后指定的類或函數或段的再測試是非常有用的。
3.此外,TCA能從初始測試用例中自動地抽取最小測試用例集,并對基于類的、函數的、分支的、塊的、段的覆蓋等等各自分別進行劃分。它可以對系統級的再測試節省大量的時間和費用。
訓練新成員
1. 提供全面的靜態和動態系統分析的能力,能抽取各種信息及自動生成系統文檔,并且可以使被抽取的信息讓新成員聯機訪問,大大的節省了設計人員和工程師的時間。
2.通過提供最新的和精確的各種系統概貌圖和流程圖(包括數據結構、類繼承圖、函數調用圖和程序樹),全局數據分析的詳細報告,詳細的程序邏輯圖和源代碼的控制流程圖,幫助他們了解系統和深入地理解代碼。
3.使用的GUI接口,使開發組的新成員容易自我訓練;具有一個從頂層到詳細的代碼系統動態的和圖形化的表達能力;具有鏈接不同層次的結構圖和流程圖在一起的能力。
4.提供基于函數分析和流程圖化的能力與基于類分析和流程圖化的能力,使得一個面向對象的系統很容易被透徹地了解。
單元測試的考慮單元測試是要檢驗程序最小單位(模塊)有無錯誤,它是在編碼完成后,首先要施行的測試工作。一般由編碼人員自己來完成,因而通常把單元測試看成是編碼步驟的附屬品。單元測試大多從程序的內部結構出發設計測試用例,即采用白盒測試方法,多個程序模塊可以并行地獨立開展測試工作。
原文轉自:http://www.anti-gravitydesign.com