• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

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

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

    發布: 2009-10-26 09:27 | 作者: 網絡轉載 | 來源: 領測軟件測試網 | 查看: 214次 | 進入軟件測試論壇討論

    領測軟件測試網

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

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

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

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

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

    1測試種類和階段

    1.1 測試種類

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

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

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

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

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

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

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

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

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

    1.2 測試階段

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

    需求開發

    高層設計

    詳細設計

    編程

    單元測試

    集成測試

    系統測試

    驗收測試

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    2性能用例編寫方案

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

    為了便于性能測試工作的實施,這里的性能測試綜合了性能、強度、壓力、負載等多方面的測試內容,主要包含的內容有:預期性能指標測試、用戶并發性能測試、疲勞強度測試、大數據量測試和速度測試、網絡、服務器等方面的內容。

    性能測試不同的系統有不同的要求,編寫方法要根據實際要求進行編寫,本文提出一個常見的參考方案,在實際工作中,可以根據需要加入其它例如內存泄露等和性能相關的測試用例。

    下面介紹各個部分性能測試用例包含的內容:

    2.1預期性能指標測試用例

    通常系統在設計前都會提出一些性能指標,這些指標是性能測試要完成的首要工作之一。針對每個指標都要編寫多個測試用例來驗證是否達到要求,并根據測試結果來改進系統的性能。

    這類通常以單用戶為主,如果遇到并發用戶的情況,可以歸到并發用戶測試用例中。這類用例通常都是可以通過手工來執行的用例,例如示例中的上傳一份文件,期望的性能為2M/S,完全可以手動上傳文件,同時用秒表計時。這些內容通常在需求說明書中可以顯而易見的查到。不過當看到如支持并發用戶300人,就應該放到后面進行。測試結果也是直接記錄是否達到要求,如果系統沒有達到要求則進行改善。

    2.2用戶并發性能測試用例

    用戶并發測試是性能測試的最主要部分,包含了負載測試和壓力測試的過程。主要是逐漸增加用戶數量來加重系統負擔,直到出現不能接收的性能點或者瓶頸。一般要測試正常數量的用戶并發和極限數量下用戶并發的情況。

    并發用戶測試主要是對系統的核心功能和重要業務進行測試,要以真實的業務數據作為輸入,選擇有代表性和關鍵的業務操作來設計測試用例。主要編寫以下兩個方面的用例:

    核心模塊的測試(可以理解為“單元性能測試”):對核心功能模塊進行并發用戶測試,測試系統是否能夠穩定運行。例如對于互聯網的公用郵件系統,每天早上9點左右可能是收發郵件的高峰,這時候上千的用戶都要在上班后進入郵件系統,系統這個時候需要接收和發送大量的郵件。所以郵件系統這一功能模塊要進行并發測試。通過測試可以知道數據庫服務器、操作系統、網絡設備等是否能夠承受住考驗,同時可以對瓶頸進行分析。

    表2列出來一些常見的參數(表格中的數據為示例的測試用例和測試結果),可以根據實際需要進行增加和刪除,其中磁盤I/O、數據庫相關測試參數要根據實際情況進行選擇,因此沒有列出。

    在編寫這類用例時,要進行綜合分析,選出系統中的各個核心模塊,分別設計每個模塊的測試用例:把模塊劃分成小的“事務”進行測試,這樣在測試分析中便于定位問題究竟出現在哪里。例如郵件系統可以劃分成:接收郵件、發送郵件、打開郵件等小的事務進行測試用例的編寫,每個操作做為一個用例來執行。

    業務組合性能測試(可以理解為“集成性能測試”):所有的用戶不會只使用核心模塊,通常每個功能都可能被使用到,所有既要模擬多用戶的“相同”操作,又要模擬多用戶的不同操作,對多個業務進行組合性能測試。

    延伸閱讀

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

    TAG: 軟件測試 性能測試

    21/212>

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

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

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>