- 相關推薦
測試方法和測試工具解決方案
隨著軟、硬件技術的發(fā)展,計算機的應用領域越來越廣,而其中軟件的功能也越來越強大,軟件也越來越復雜。這就使保證軟件的質量,保證軟件的高度可靠性,面臨巨大的挑戰(zhàn)。特別是諸如軍事、航空航天、通訊、交通醫(yī)療等行業(yè),軟件的微小瑕疵就可能造成對生命安全、天文數(shù)字的巨額財產、甚至對國-家-安-全嚴重威脅。
因此,對軟件產品質量的度量、評估和保證,成了用戶和項目承攬公司都十分關注的問題;谶@些原因,國際上的標準化和認證組織已經(jīng)制定出了一些軟件標準(在iso-9001以及seicmm框架中)。對于軟件的開發(fā)過程即可通過這些標準進行約束和度量。
為了確保軟件的質量,達到軟件工程的度量標準,軟件測試是非常必要的。我們通過對國內外知名軟件提供商和系統(tǒng)集成商的調查了解,在軟件產品的測試方面均使用軟件工程中提出的兩種方法進行測試,即白盒和黑盒測試。白盒是已知產品的內部工作過程,可以通過測試證明每種內部操作是否符合設計規(guī)格要求,所有內部成分是否已經(jīng)通過檢查。白盒測試又叫結構測試。黑盒是已知產品的功能設計規(guī)格,可以進行測試證明每個實現(xiàn)了的功能是否符合要求,黑盒又叫做功能測試,它不僅應用于開發(fā)階段的測試,更重要的是在產品測試階段及維護階段必不可少。
太平洋軟件(中國)有限公司(pts)自1995年引進第一個測試工具以來,涉足測試領域已有多年,對當今流行的測試軟件、測試理論和方法都有深入的研究和理解,在此基礎上,開展了為用戶提供測試方法培訓和測試專業(yè)服務的業(yè)務。通過服務,我們力求能夠幫助用戶有效地、有步驟地調整其現(xiàn)有軟件生產過程,幫助企業(yè)通過iso9001認證,提高開發(fā)隊伍的cmm 等級,最終達到提高軟件產品質量,加強企業(yè)競爭力促進企業(yè)發(fā)展的目的。
以下是pts推出的測試方法和測試工具解決方案。
一、 白盒測試的實施方案
在開發(fā)階段
要保證產品的質量,產品的生產過程應該遵循一定的行業(yè)標準。軟件產品也是同樣,沒有標準可依自然談不上質量的好壞。所有關心軟件開發(fā)質量的組織、單位,都要定義或了解軟件的質量標準、模型。其好處是保證公司實踐的均勻性,產品的可維護性、可靠性以及可移植性等。
在測試階段
與軟件產品的開發(fā)過程一樣,測試過程也需要有一定的準則,來指導、度量、評價軟件測試過程的質量。
定義測試準則
為控制測試的有效性以及完成程度,必須定義準則和策略,以判斷何時結束測試階段。準則必須是客觀的,可量化的元素,而不能是經(jīng)驗或感覺。
根據(jù)應用的準則和項目相關的約束,項目領導可以定義使用的度量方法,和要達到的覆蓋率。
度量測試的有效性、完整性
對每個測試的測試覆蓋信息和累計信息,用圖形方式顯示覆蓋比率,并根據(jù)測試運行情況實時更新,隨時顯示新的測試所反映的測試覆蓋情況。
允許所有的測試運行依據(jù)其有效性進行管理,用戶可以減少不適用于非回歸測試的測試的過程。
優(yōu)化測試過程
在測試階段的第一步,執(zhí)行的測試是功能性測試。其目的是檢查所期望的功能是否已經(jīng)實現(xiàn)。在測試的初期,覆蓋率迅速增加。象樣的測試工作一般能達到70%的覆蓋率。但是,此時要再提高覆蓋率是十分困難的,因為新的測試往往覆蓋了相同的測試路徑。在該階段需要對測試策略做一些改變:從功能性測試轉向結構化測試。也就是說,針對沒有執(zhí)行過的路徑,構造適當?shù)臏y試用例來覆蓋這些路徑。
在測試期間,及時地調整測試策略,并檢查分析關鍵因素,以提高測試效率。
圖表 1 測試過程中覆蓋率趨勢及策略的調整
在維護階段
有一點認識越來越為大多數(shù)人所認可:應用系統(tǒng)的維護費用與初始的開發(fā)費用基本相等,而在維護過程中,在對應用結構、邏輯、運行的理解上花費的時間,要用去50%的時間。
由于系統(tǒng)維護人員很可能不是開發(fā)人員本人,再加上人員的流動、團隊內部的交流的不足,都需要對應用系統(tǒng)的理解。
理解應用系統(tǒng)
將應用系統(tǒng)的設計,以文件形式(部件文件間的關系)和調用圖的形式(函數(shù)和過程間的關系)可視化。
函數(shù)的邏輯結構以控制流圖的形式顯示,在控制流圖上選定一個節(jié)點,即可得到相對應的代碼。
應用系統(tǒng)可以在不同的抽象層上進行分析,不同層次間的導航關聯(lián),促進對整體的理解。
對應用按其資源的使用進行檢測,由此促進對函數(shù)之間(參數(shù)傳遞)的信息流、數(shù)據(jù)間的關系,以及其它資源的理解。
安全地修改軟件
維護軟件意味著修改軟件,修改后的程序確認需要大量的工作。因為,看起來很小的修改,都可能會滾雪球似的導致數(shù)十處甚至上百處的修改。這種后繼的修改需求,越早發(fā)現(xiàn)越好,最好是在編譯前就發(fā)現(xiàn)并做出修改,最壞的情況是在調試和非回歸測試期間發(fā)現(xiàn)。
二、黑盒測試的實施方案
傳統(tǒng)系統(tǒng)的編程語言和邏輯全是過程式的。這種邏輯順序只有當數(shù)據(jù)中的值引起不同的循環(huán)或控制順序改變時才會發(fā)生變化。
客戶機/服務器和圖形用戶界面系統(tǒng)不是過程式的。它們是事件驅動的。這意味著計算機針對發(fā)生的事件執(zhí)行相應的程序。這里的事件是指用戶采取的行為,象鍵盤活動,鼠標移動,鼠標擊鍵動作和按鍵的動作,都是事件的例子。因為事件發(fā)生的順序不能預先知道,事件驅動系統(tǒng)相對來說更難測試。開發(fā)人員不可能知道用戶下一次要選中哪個按鈕或菜單項。實際上,應用程序必須在任何時候對所有發(fā)生和可能發(fā)生的事件作好正確處理的準備。
另外,隨著rad(快速應用開發(fā)方式)的引入,導致應用的實現(xiàn)速度很快,但這種方式也有它的不足。一個重要的缺點是項目規(guī)劃經(jīng)常漏掉重要的測試階段。測試象在傳統(tǒng)開發(fā)項目中一樣,經(jīng)常被忽視,并且給予很不現(xiàn)實的少量時間和資源。對于這一點,測試rad方式下提交的應用并保證軟件質量是測試團隊的首要工作。
黑盒測試在實施時又分為客戶端的測試和服務器端的性能測試。客戶端的測試主要關注應用的業(yè)務邏輯,用戶界面,功能測試等;服務器端的測試主要關注服務器的性能,衡量系統(tǒng)的響應時間、事務處理速度和其他時間敏感的需求。在應用系統(tǒng)最終被交付之前保證這兩方面的測試沒有缺陷。
由于測試并不是進行一次就可以完成的個過程,而是需要根據(jù)產品版本的變化生成不同的測試過程,如果這一過程僅通過手工方式完成是很難達到的。需要通過工具的幫助,從而簡化測試的復雜程度,降低在測試成本上的開銷,縮短投放市場的時間。還有一個突出的特點就是應用程序的回歸測試,這是手工方式完成不了的過程,只有通過工具才能實施。而回歸測試在測試階段是很重要的過程,通過回歸測試可以發(fā)現(xiàn)很多隱含的缺陷和錯誤。
在服務器端的測試主要以模擬合法用戶活動給系統(tǒng)的負載,負載測試的統(tǒng)計結果被用來預測用戶將體驗到的性能和響應時間。這都需要在客戶機/服務器系統(tǒng)發(fā)行之前都要進行的。
【測試方法和測試工具解決方案】相關文章:
面試測試方法04-12
面試時測試方法04-12
材料分析測試方法名詞解釋03-29
測試計劃模板07-25
軟件測試總結03-22
測試崗位職責04-23
體質健康測試總結06-08
測試計劃4篇02-20
測試計劃五篇02-07
【精選】測試計劃四篇02-27