• <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-04-30來源:作者:點擊數: 標簽:軟件測試數據庫性能壓力技術
    上面介紹的都是代碼層的 性能測試 ,而目前很多軟件系統都需要應用到數據庫,通常 數據庫 也會成為性能瓶頸之一。如圖所示的是一個簡單C/S結構系統可能出現性能瓶頸的地方。 簡單C/S結構系統可能出現性能瓶頸的地方 那么測試人員應該如何發現數據庫相關的性能
    上面介紹的都是代碼層的性能測試,而目前很多軟件系統都需要應用到數據庫,通常數據庫也會成為性能瓶頸之一。如圖所示的是一個簡單C/S結構系統可能出現性能瓶頸的地方。

     簡單C/S結構系統可能出現性能瓶頸的地方


    那么測試人員應該如何發現數據庫相關的性能問題呢?
            首先要分析什么會引起數據庫的性能問題,一般來說有兩個主要原因:數據庫的設計和SQL語句。
            數據庫的設計又分為數據庫的參數配置和邏輯結構設計,前一種比較好解決,后一種則是測試人員需要關注的,糟糕的表結構設計會導致很差的性能表現。例如,沒有合理地設置主鍵和索引則可能導致查詢速度大大降低。沒有合理地選擇數據類型也可能導致排序性能降低。
            低效率的SQL語句是引起數據庫性能問題的主要原因之一,其中又包括程序請求的SQL語句和存儲過程、函數等SQL語句。對這些語句進行優化能大幅度地提高數據庫性能,因此是測試人員需要重點關注的對象。
            技巧:可以借助一些工具來幫助找出有性能問題的語句,例如SQL Best Practices Analyzer、SQLServer數據庫自帶的事件探查器和查詢分析器、LECCO SQLExpert等。

    軟件的“極限考驗”——壓力測試
            是否想知道軟件系統在某方面的能力可以達到一個怎樣的極限呢?軟件項目的管理者以及市場人員會尤其關心壓力測試的結果,想知道軟件系統究竟能達到一個怎樣的極限。壓力測試(stress testing)就是一種驗證軟件系統極限能力的性能測試。
          壓力測試負載測試(load testing)的區別在于,負載測試需要進行多次的測試和記錄,例如隨著并發的虛擬用戶數的增加,系統的響應時間、內存使用、CPU使用情況等方面的變化如何。壓力測試的目的很明確,就是要找到系統的極限點。在系統崩潰或與指定的性能指標不符時的點,就是軟件系統的極限點。

            說明:實際上,在做性能測試的過程中不會嚴格區分這些概念,它們的界限有些模糊。對于測試人員來說,更關心的是如何滿足性能需求,如何進行性能測試。

            經常碰到性能需求不明確的情況。用戶通常不會明確地提出性能需求,在進行需求分析和設計時也通常把性能考慮在后面。即使提出了性能上的要求,也是很模糊的,例如:“不能感覺到明顯的延遲”。
            對于不明確的性能需求,通常需要進行的不是極限測試,而是負載測試,需要逐級驗證系統在每一個數據量和并發量的情況下的性能響應,然后綜合分析系統的性能表現形式。

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品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>