軟件測試用例之性能測試用例

發表于:2011-07-22來源:未知作者:領測軟件測試網采編點擊數: 標簽:性能測試;測試用例
性能測試、壓力測試、負載測試、強度測試、穩定性測試、健壯性測試、功能測試、接口測試……,這么多眼花繚亂的測試類型名稱,估計很少有人能準確的區分并說出定義來,至于對應的測試用例如何編寫和執行,就更不用說了。 如果問測試工程師測試用例如何

  性能測試、壓力測試、負載測試、強度測試、穩定性測試、健壯性測試、功能測試、接口測試……,這么多眼花繚亂的測試類型名稱,估計很少有人能準確的區分并說出定義來,至于對應的測試用例如何編寫和執行,就更不用說了。

  如果問測試工程師測試用例如何編寫,就象是問程序員如何編寫代碼得到的答案一樣,每個人都會給出不同的編寫方法,但實用的測試用例卻象優秀的程序一樣難以編寫。

  目前國內,測試工程師卻時常要面對“已經延期幾倍計劃時間的項目”,測試用例如何發揮更大的作用,是一個迫切需要解決的問題。事實上,完全可以把測試用例看成是測試工程師編寫的程序:這個“程序”是為了輔助測試工作的進行而開發的,目的是為了發現軟件問題,同時“順便”證明軟件功能是否符合要求。

  本文針對上面的問題,以設計性能測試用例為示范,講解在企業實際工作中,如何有效劃分測試種類和編寫對應的測試用例,使測試工作更加合理、高效率的開展。

  1測試種類和階段

  1.1 測試種類

  對于測試種類的說法多種多樣,最多的能達到30多種測試類型。而實際工作中很多測試是互相包含的。按照企業中實際工作需要,通常主要進行下面幾種類型的測試:功能測試、健壯性測試、接口測試、強度測試、壓力測試、性能測試、用戶界面測試、可靠性測試、安裝/反安裝測試、文檔測試。

  下面介紹幾種重要的測試種類及其測試的內容:

  功能測試:功能測試主要針對產品需求說明書的測試,是驗證功能是否否合需求,包括原定功能的檢驗、是否有冗余功能、遺漏功能。這類測試應由測試員做,這并不意味著程序員在發布前不必檢查他們的代碼能否工作,他們也需要進行基本功能的測試。

  接口測試:程序員對各個模塊進行系統聯調的測試,包含程序內接口和程序外接口測試。這個測試,在單元測試階段進行了一部分工作,而大部分都是在集成測試階段完成的。由開發人員進行。

  性能測試:在交替進行負荷和強迫測試時常用的術語。性能測試關注的是系統的整體。它和通常所說的強度、壓力/負載測試測試有密切關系。所以壓力和強度測試應該與性能測試一同進行。

  用戶界面測試:對系統的界面進行測試,測試用戶界面是否友好、是否方便易用、設計是否合理、位置是否正確等一系列界面問題

  安裝/反安裝測試:安裝測試主要檢驗軟件是否可以正確安裝,安裝文件的各項設置是否有效,安裝后能否影響原系統;反安裝是逆過程,測試是否刪除干凈,是否給影響原系統等。

  文檔測試:主要測試開發過程中針對用戶的文檔,以需求、用戶手冊、安裝手冊等為主,檢驗文檔是否和實際應用存在差別。文檔測試不需要編寫測試用例。

  測試種類的劃分不要拘泥于上面的形式,總體來說應該服從于測試策略,可以根據具體工作的特點進行安排,為了工作更容易開展,完全可以把一些測試合在一起進行。在后面的性能測試用例的編寫上,充分體現了這一思想。

  1.2 測試階段

  和開發過程相對應,測試過程會依次經歷單元測試、集成測試、系統測試、驗收測試四個主要階段。對應關系如圖1所示:

  需求開發

  高層設計

  詳細設計

  編程

  單元測試

  集成測試

  系統測試

  驗收測試

  圖1 開發與測試的“V”型關系

  單元測試:單元測試是針對軟件設計的最小單位––程序模塊甚至代碼段進行正確性檢驗的測試工作,通常由開發人員進行。

  集成測試:集成測試是將模塊按照設計要求組裝起來進行測試,主要目的是發現與接口有關的問題。由于在產品提交到測試部門前,產品開發小組都要進行聯合調試,因此在大部分企業中集成測試是由開發人員來完成的。。

  系統測試:系統測試是在集成測試通過后進行的,目的是充分運行系統,驗證各子系統是否都能正常工作并完成設計的要求。它主要由測試部門進行,是測試部門最大最重要的一個測試,對產品的質量有重大的影響。

  驗收測試:驗收測試以需求階段的《需求規格說明書》為驗收標準,測試時要求模擬實際用戶的運行環境。對于實際項目可以和客戶共同進行,對于產品來說就是最后一次的系統測試。測試內容為對功能模塊的全面測試,尤其要進行文檔測試。

  盡管測試階段的劃分十分明確,但是在具體的項目和產品的測試中,尤其在執行測試時,會根據實際需要來開展。

  1.3 測試種類、階段和用例的關系

  為了便于在實際工作中提高效率,同時方便測試用例的編寫和執行,可以把上面提到的各個測試類型與對應的測試用例合并。合并后的測試用例主要有以下幾種:

  1. 功能測試用例:包含功能測試、健壯性測試、可靠性測試

  2. 性能測試用例:包含性能測試、壓力測試、強度測試

  3. 集成測試用例:包含接口測試、健壯性測試、可靠性測試

  4. 安全測試用例:安全測試用例

  5. 用戶界面測試用例:包含用戶界面測試用例、少量功能測試用例

  6. 安裝/反安裝測試用例:安裝/反安裝測試用例

  綜合上面的分析,測試種類、測試階段以及執行人員具體的關系如表1所示。

  總之,測試的種類應該盡量的少,這樣每次都可以執行更多的測試內容。例如在進行功能測試的同時,完全可以進行健壯性的測試。(當然如果產品健壯性方面要求較高,就可以把健壯性測試作為獨立的測試。)

  2性能用例編寫方案

  性能測試在軟件測試中占有重要的地位,而性能測試又關聯很多內容。例如壓力和強度測試就與性能測試密切相關:針對一個網站進行測試,模擬10到50個用戶就是在進行常規性能測試,用戶增加到1000乃至上萬就變成了壓力/負載測試,如果同時對系統進行大量的數據查詢操作,就包含了強度測試。

原文轉自:http://www.anti-gravitydesign.com

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