• 軟件測試技術
  • 軟件測試博客
  • 軟件測試視頻
  • 開源軟件測試技術
  • 軟件測試論壇
  • 軟件測試沙龍
  • 軟件測試資料下載
  • 軟件測試雜志
  • 軟件測試人才招聘
    暫時沒有公告

字號: | 推薦給好友 上一篇 | 下一篇

面向對象軟件的測試

發布: 2010-6-23 14:02 | 作者: 不詳 | 來源: 領測測試網采編 | 查看: 234次 | 進入軟件測試論壇討論

領測軟件測試網

  2. 對父類的測試是否能照搬到子類?

  援用上面的假設,Base::Redefined()和Derived::Redefined()已經是不同的成員函數,它們有不同的服務說明和執行。對此,照理應該對 Derived::Redefined()重新測試分析,設計測試用例。但由于面向對象的繼承使得兩個函數有相似,故只需在 Base::Redefined()的測試要求和測試用例上添加對Derived::Redfined()新的測試要求和增補相應的測試用例。例如:

  Base::Redefined()含有如下語句

  If (value<0) message ("less");

  else if (value==0) message ("equal");

  else message ("more");

  Derived::Redfined()中定義為

  If (value<0) message ("less");

  else if (value==0) message ("It is equal");

  else

  {message ("more");

  if (value==88)message("luck");}

  在原有的測試上,對Derived::Redfined()的測試只需做如下改動:將value==0的測試結果期望改動;增加value==88的測試。

  多態有幾種不同的形式,如參數多態,包含多態,過載多態。包含多態和過載多態在面向對象語言中通常體現在子類與父類的繼承關系,對這兩種多態的測試參見上述對父類成員函數繼承和過載的論述。包含多態雖然使成員函數的參數可有多種類型,但通常只是增加了測試的繁雜。對具有包含多態的成員函數測試時,只需要在原有的測試分析和基礎上擴大測試用例中輸入數據的類型的考慮。對類為粒度進行面向對象的單元測試,可參考[10]中關于如何從MtSS生成測試用例的說明。

  七 面向對象的集成測試(OO Integrate Test)

  傳統的集成測試,是由底向上通過集成完成的功能模塊進行測試,一般可以在部分程序編譯完成的情況下進行。而對于面向對象程序,相互調用的功能是散布在程序的不同類中,類通過消息相互作用申請和提供服務。類的行為與它的狀態密切相關,狀態不僅僅是體現在類數據成員的值,也許還包括其他類中的狀態信息。由此可見,類相互依賴極其緊密,根本無法在編譯不完全的程序上對類進行測試。所以,面向對象的集成測試通常需要在整個程序編譯完成后進行。此外,面向對象程序具有動態特性,程序的控制流往往無法確定,因此也只能對整個編譯后的程序做基于黑盒子的集成測試。

  面向對象的集成測試能夠檢測出相對獨立的單元測試無法檢測出的那些類相互作用時才會產生的錯誤;趩卧獪y試對成員函數行為正確性的保證,集成測試只關注于系統的結構和內部的相互作用。面向對象的集成測試可以分成兩步進行:先進行靜態測試,再進行動態測試。

延伸閱讀

文章來源于領測軟件測試網 http://www.anti-gravitydesign.com/


關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

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