軟件測試的各種方法介紹_第1頁
軟件測試的各種方法介紹_第2頁
軟件測試的各種方法介紹_第3頁
軟件測試的各種方法介紹_第4頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、精品文檔研發(fā)過程中軟件測試的方法匯總一、動態(tài)測試的幾個環(huán)節(jié):動態(tài)測試,英文是Moment Testing 。動態(tài)測試是指通過運行軟件來檢驗軟件的動態(tài)行為和運行結(jié)果的正確性。根據(jù)動態(tài)測試在軟件開發(fā)過程中所處的階段和作用, 動態(tài)測試可分為如下幾個步驟:單元測試集成測試冒煙測試系統(tǒng)測試回歸測試驗收測試1. 單元測試單元測試,英文是Unit Testing。單元測試是最微小規(guī)模的測試 ; 以測試某個功能或代碼塊。典型地由程序員而非測試員來做,因為它需要知道內(nèi)部程序設(shè)計和編碼的細節(jié)知識。 這個工作不容易做好,除非應(yīng)用系統(tǒng)有一個設(shè)計很好的體系結(jié)構(gòu) ; 還可能需要開發(fā)測試驅(qū)動器模塊或測試套具。2. 集成測試

2、集成測試,英文是Integration Testing。集成測試是指一個應(yīng)用系統(tǒng)的各個部件的聯(lián)合測試, 以決定他們能否在一起共同工作并沒有沖突。 部件可以是代碼塊、 獨立的應(yīng)用、 網(wǎng)絡(luò)上的客戶端或服務(wù)器端程序。這種類型的測試尤其與客戶服務(wù)器和分布式系統(tǒng)有關(guān)。 一般集成測試以前,單元測試需要完成。集成測試是單元測試的邏輯擴展。 它的最簡單的形式是: 兩個已經(jīng)測試過的單元組合成一個組件, 并且測試它們之間的接口。 從這一層意義上講, 組件是指多個單元的集成聚合。 在現(xiàn)實方案中, 許多單元組合成組件, 而這些組件又聚合成程序的更大部分。 方法是測試片段的組合, 并最終擴展進程, 將您的模塊與其他組的

3、模塊一起測試。最后,將構(gòu)成進程的所有模塊一起測試。此外,如果程序由多個進程組成,應(yīng)該成對測試它們,而不是同時測試所有進程。1 歡迎下載精品文檔集成測試識別組合單元時出現(xiàn)的問題。 通過使用要求在組合單元前測試每個單元,并確保每個單元的生存能力的測試計劃, 可以知道在組合單元時所發(fā)現(xiàn)的任何錯誤很可能與單元之間的接口有關(guān)。 這種方法將可能發(fā)生的情況數(shù)量減少到更簡單的分析級別3. 冒煙測試冒煙測試,英文是Smoke testing 。冒煙測試的名稱可以理解為該種測試耗時短, 僅用一袋煙功夫足夠了。 也有人認為是形象地類比新電路板基本功能檢查。 任何新電路板焊好后, 先通電檢查, 如果存在設(shè)計缺陷,電路

4、板可能會短路,板子冒煙了。冒煙測試的對象是新編譯的每一個需要正式測試的軟件版本, 目的是確認軟件基本功能正常,可以進行后續(xù)的正式測試工作。 冒煙測試的執(zhí)行者是版本編譯人員。4. 系統(tǒng)測試系統(tǒng)測試,英文是System Testing 。系統(tǒng)測試是基于系統(tǒng)整體需求說明書的黑盒類測試, 應(yīng)覆蓋系統(tǒng)所有聯(lián)合的部件。系統(tǒng)測試是針對整個產(chǎn)品系統(tǒng)進行的測試, 目的是驗證系統(tǒng)是否滿足了需求規(guī)格的定義,找出與需求規(guī)格不相符合或與之矛盾的地方。系統(tǒng)測試的對象不僅僅包括需要測試的產(chǎn)品系統(tǒng)的軟件, 還要包含軟件所依賴的硬件、外設(shè)甚至包括某些數(shù)據(jù)、某些支持軟件及其接口等。因此,必須將系統(tǒng)中的軟件與各種依賴的資源結(jié)合起來

5、,在系統(tǒng)實際運行環(huán)境下來進行測試。5.回歸測試回歸測試,英文是Regression testing?;貧w測試是指在發(fā)生修改之后重新測試先前的測試以保證修改的正確性。理論上,軟件產(chǎn)生新版本, 都需要進行回歸測試, 驗證以前發(fā)現(xiàn)和修復(fù)的錯誤是否在新軟件版本上再次出現(xiàn)。根據(jù)修復(fù)好了的缺陷再重新進行測試。 回歸測試的目的在于驗證以前出現(xiàn)過但已經(jīng)修復(fù)好的缺陷不再重新出現(xiàn)。 一般指對某已知修正的缺陷再次圍繞它原來出現(xiàn)時的步驟重新測試。 通常確定所需的再測試的范圍時是比較困難的, 特別當臨近產(chǎn)品發(fā)布日期時。 因為為了修正某缺陷時必需更改源代碼, 因而就有可能影響這部分源代碼所控制的功能。 所以在驗證修好的缺

6、陷時不僅要服從缺陷原來出現(xiàn)時的步驟重新測試, 而且還要測試有可能受影響的所有功能。 因此應(yīng)當鼓勵對所有回歸測試用例進行自動化測試。2 歡迎下載精品文檔6. 接受測試接受測試,英文是Accept Testing。接受測試是基于客戶或最終用戶的規(guī)格書的最終測試, 或基于用戶一段時間的使用后,看軟件是否滿足客戶要求。一般從功能、用戶界面、性能、業(yè)務(wù)關(guān)聯(lián)性進行測試。二、按測試者對內(nèi)部的知曉或者程度分類:1. 白盒測試白盒測試,英文是 White Box Testing 。又稱結(jié)構(gòu)測試或者邏輯驅(qū)動測試。白盒測試是把測試對象看作一個打開的盒子。利用白盒測試法進行動態(tài)測試時,需要測試軟件產(chǎn)品的內(nèi)部結(jié)構(gòu)和處理

7、過程,不需測試軟件產(chǎn)品的功能。白盒測試法的覆蓋標準有邏輯覆蓋、 循環(huán)覆蓋和基本路徑測試。 其中邏輯覆蓋包括語句覆蓋、判定覆蓋、條件覆蓋、判定 / 條件覆蓋、條件組合覆蓋和路徑覆蓋。白盒測試是知道產(chǎn)品內(nèi)部工作過程, 可通過測試來檢測產(chǎn)品內(nèi)部動作是否按照規(guī)格說明書的規(guī)定正常進行, 按照程序內(nèi)部的結(jié)構(gòu)測試程序, 檢驗程序中的每條通路是否都有能按預(yù)定要求正確工作, 而不顧它的功能, 白盒測試的主要方法有邏輯驅(qū)動、基路測試等,主要用于軟件驗證。白盒測試常用工具有: Jtest 、VcSmith、Jcontract 、C+ Test 、CodeWizard、 logiscope 。2. 黑盒測試黑盒測試,

8、英文是Black Box Testing。又稱功能測試或者數(shù)據(jù)驅(qū)動測試。黑盒測試是根據(jù)軟件的規(guī)格對軟件進行的測試,這類測試不考慮軟件內(nèi)部的運作原理,因此軟件對用戶來說就像一個黑盒子。軟件測試人員以用戶的角度, 通過各種輸入和觀察軟件的各種輸出結(jié)果來發(fā)現(xiàn)軟件存在的缺陷,而不關(guān)心程序具體如何實現(xiàn)的一種軟件測試方法。黑盒測試常用工具有: AutoRunner、winrunner 、 loadrunner 。三、從思維的方向分:1. 正向測試:2. 逆向測試:。3 歡迎下載精品文檔逆向測試 / 反向測試 / 負面測試的英文是Negative Testing,測試瞄準于使系統(tǒng)不能工作。負面測試與正面測試

9、的比較:負面測試( Negative testing )是相對于正面測試 (Positive testing )而言的。它們也是測試設(shè)計時的兩個非常重要的劃分。 簡單點說,正面測試就是測試系統(tǒng)是否完成了它應(yīng)該完成的工作;而負面測試就是測試系統(tǒng)是否不執(zhí)行它不應(yīng)該完成的操作。形象一點,正面測試就象一個畢恭畢敬的小學生, 老師叫我做什么,我就做什么; 而負面測試就象一個調(diào)皮搗蛋的孩子, 你叫我這樣做, 我偏不這樣做,而且和你對著干。開發(fā)人員也是最討厭修改此類 bug 的。四、從測試的內(nèi)容分:1. 接口測試接口測試的英文是 interface testing ,接口測試測試系統(tǒng)組件間接口的一種測試。接

10、口測試的好處:由于接口測試代碼本身就是用 junit (當然接口的類型不同,不一定是 Junit 來實現(xiàn))來實現(xiàn)的,是屬于自動化測試的范疇, 因此必定也包含自動化測試所固有的優(yōu)勢。1) 提高測試質(zhì)量軟件開發(fā)的過程是一個持續(xù)集成和改進的過程,而每一次的改進都可能引進新bug, 因此當軟件的一部, 或者全部修改時, 都需要對軟件產(chǎn)品重新進行測試。 其目的是要驗證修改后的產(chǎn)品是符合需求的, 而當沒有自動化測試代碼時, 往往會由于各種各樣的原因,回歸不充分,導致 bug 遺漏。2) 提高測試效率軟件系統(tǒng)的規(guī)模越來越大, 功能點越來越多, 開發(fā)人員的自測或者測試人員的人工測試非常耗時和繁瑣, 勢必導致測

11、試效率的低下, 而自動化測試正好解決這些耗時繁瑣的任務(wù), 在對外接口功能不變的情況下, 達到了一次編寫, 永久使用的效果。3) 提高測試覆蓋通過手工測試很難測試到一些更深層次的異常和安全的問題, 通過一些輔助的一些測試工具,能分析出代碼的覆蓋率,通過覆蓋率的提高來提高測試的深度。4) 更好地重現(xiàn)軟件缺陷由于每次執(zhí)行都是相同的代碼,一旦代碼出錯,必定回歸出錯5) 更好定位錯誤由于接口測試是一種自下向上的測試, 因此一量出錯, 非常容易定位出錯, 不向系統(tǒng)測試那樣了,一旦有 Bug,需要幾層驗證之后才能確定出錯位置。4 歡迎下載精品文檔6) 降低修改 bug 的成本接口測試基本和開發(fā)人員的編碼平行

12、工作,因此發(fā)現(xiàn)問題會比系統(tǒng)測試早很多,因此減少了修改bug 的成本。7)增進測試人員和開發(fā)人員之間的合作關(guān)系,測試工程師為了更好地開展工作,需要對開發(fā)技術(shù)有深入的理解和實踐,有了與開發(fā)工程師更多的交流。8) 降低了項目不能按時發(fā)布的風險由于接口測試很早就介入, 在提交給系統(tǒng)測試前對項目代碼的核心模塊已經(jīng)做了詳盡的測試, 必定加速系統(tǒng)測試的時間, 由此來保證項目的按時發(fā)布。9)提升測試人員的技能。做接口測試必須了解開發(fā)人員的開發(fā)流程和一些開發(fā)技能,也需要了解測試工具的一些使用方法和一些測試思想, 提升了測試人員的技術(shù)附加值,提高了自身的競爭力。10)促使項目開發(fā)過程的規(guī)范化要進行接口,需要完善的

13、文檔進行保障,沒有測試文檔,接口測試將寸步難行,接口測試將增加開發(fā)過程規(guī)范化產(chǎn)出,而規(guī)范化產(chǎn)出也保證了項目質(zhì)量。2. 文檔測試:文檔測試的英文是documentation testing,測試關(guān)注于文檔的正確性。文檔測試有三大類分別是開發(fā)文件、用戶文件、管理文件。1. 開發(fā)文件:可行性研究報告、軟件需求說明書、數(shù)據(jù)要求說明書、概要設(shè)計說明書、詳細設(shè)計說明書、數(shù)據(jù)庫設(shè)計說明書、模塊開發(fā)卷宗。2. 用戶文件:用戶手冊、操作手冊。3. 管理文件:項目開發(fā)計劃、測試計劃、測試分析報告、開發(fā)進度月報、項目開發(fā)總結(jié)報告。軟件測試中的文檔測試主要是對相關(guān)的設(shè)計報告和用戶使用說明進行測試, 對于設(shè)計報告主要是

14、測試程序與設(shè)計報告中的設(shè)計思想是否一致; 對于用戶使用說明進行測試時,主要是測試用戶使用說明書中對程序操作方法的描述是否正確, 重點是用戶使用說明中提到的操作例子要進行測試, 保證采用的例子能夠在程序中正確完成操作。一般來識 , 文檔是軟件的重要組成部分 , 因此文檔測試也是軟件測試的主要內(nèi)容。在軟件的整個生命周期中會出現(xiàn)很多文檔 , 通??梢园盐臋n粗略地分為三類 : 開發(fā)文檔 , 管理文檔和用戶文檔。由于文檔與代碼不同 , 不能直接運行 , 對于文檔的測試通常只能以文檔審查的方式進行。對于管理文檔和審查通常歸屬于管理范疇 , 而不是軟件測試范疇 , 因為對于管理文檔審查的目的不是為了發(fā)現(xiàn)和消

15、除用戶所看到的軟件中的缺陷 , 而是為了更好地管理軟件開發(fā)的過程。對于開發(fā)文檔 , 由于這些文檔本身體現(xiàn)了所在開發(fā)階段的軟件實際形態(tài) , 對于這些文檔的測試實際上是早期軟件測試的主要活動。用戶文檔是那些隨程序一起交付給用戶的文檔 , 它們實際上是交付給用戶的軟件的重要組成部分。對于這些文檔的測試是對最終軟件產(chǎn)品測試的一部分。5 歡迎下載精品文檔基于設(shè)計的測試的英文是 design-based testing ,是根據(jù)軟件的構(gòu)架或詳細設(shè)計引出測試用例的一種方法。3. 安全測試:安全測試,英文是Security Testing。安全測試是測試系統(tǒng)在防止非授權(quán)的內(nèi)部或外部用戶的訪問或故意破壞等情況時

16、怎么樣。這可能需要復(fù)雜的測試技術(shù)。 安全測試檢查系統(tǒng)對非法侵入的防范能力。安全測試期間,測試人員假扮非法入侵者,采用各種辦法試圖突破防線。例如: 想方設(shè)法截取或破譯口令; 專門定做軟件破壞系統(tǒng)的保護機制; 故意導致系統(tǒng)失敗,企圖趁恢復(fù)之機非法進入; 試圖通過瀏覽非保密數(shù)據(jù),推導所需信息,等等。理論上講,只要有足夠的時間和資源,沒有不可進入的系統(tǒng)。 因此系統(tǒng)安全設(shè)計的準則是, 使非法侵入的代價超過被保護信息的價值。此時非法侵入者已無利可圖。五、從性能上分:1. 性能測試性能測試,英文是Performance Testing。性能測試是在交替進行負荷和強迫測試時常用的術(shù)語。理想的“性能測試 ”( 和其他類型的測試 ) 應(yīng)在需求文檔或質(zhì)量保證、測試計劃中定義。性能測

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論