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

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

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

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

    Web的系統測試方法

    發布: 2010-7-01 09:56 | 作者: 不詳 | 來源: 領測測試網采編 | 查看: 89次 | 進入軟件測試論壇討論

    領測軟件測試網

      * Attempted Connections :嘗試鏈接數;

      3、數據庫服務器指標:

      * User 0 Connections :用戶連接數,也就是數據庫的連接數量;

      * Number of deadlocks:數據庫死鎖;

      * Butter Cache hit :數據庫Cache的命中情況;上面的指標只是一些通用的指標,起到拋磚引玉的作用,對于不同的應用你還必需作相應的調整,比如程序使用的是.NET技術的,則必需加入一些針對性的測試指標。對于這些指標的詳細了解,你可以參考Windows 下面的 SystemMonitor的幫助與LoadRunner、ACT的幫助。對于發現問題,指標的設置非常重要,它會幫你定性的發現一些錯誤。對于定性的壓力測試我就不做過多的分析,工具很多,流行的主要有LoadRunner,ACT,WAS,WebLoad,各個工具有它的使用范圍,其中我各個認為LoadRunner 最全面,它提供了多種協議的支持,對復雜的壓力測試都可以勝任,WAS與ACT則對微軟的技術支持的比較好,其中WAS支持分布式機群測試,ACT則是與.NET集成比較好,支持ViewState (.NET 下控件緩存的支持)的測試,當時我用時,其它測試工具還不支持,現在應該支持了吧,呵呵。在這一階段測試你要不斷的跟據系數的測試目標進行變化,一開始由于系統過于龐大,所以我們要分成若干個子系統,各個子系統的性能目標必需明確,主要是并發指標定一個閥值,同時設定一些與系統相關的測試參數,應用服務器,數據庫服務器都要有,對達不到閥值的與一些通用參數有問題的子系統進行深入分析。比如它的并發達不到你的要求,證明子系統性能有問題,或是數據庫用戶連接過高,程序沒有釋放用戶連接等等。這個我們要對子系統進行詳細測試,由于B/S 結構下,圖片的請求對性能的影響較大,所以我們對子系統測試時要分兩個部分進行,一、非程序部分,即圖片等等;二、應用程序本身。通過事務或函數的分離,可以把這兩塊實現單獨的測試,具體做法參考各個工具的手冊,我這里就不做說明。對子系統的測試參數的設置要求則更高,它有助你后面精確的定位問題,比如對異常,死鎖,網絡流量等等前面沒有注意到的情況的增加,同時你要注意增加測試參數的收集對系統的性能影響比較大,所以一般不要超過10個,剛剛介紹的整體的性能測試指標也不要增加很多,這樣影響會小一點。最后在這一階段要說明的是數據庫的數據量會很大程度的影響性能,所以要根據前面的性能需求說明書向數據庫中模擬相應的數據量,來進行測試,這樣才有更高的可信度。

      上面所說的是對問題的發現,下面就是分析問題原因,這一步的要求比較高,一般由測試人員程序員配合完成,當然如果你有相當的開發經驗,再做這方面的測試,就更為難得。下面我們說說如何精確定位問題,出現問題的可能性可能有很多種,大致分以下幾種,一、性能達不到目標;二、性能達到目標,但有一些其它的問題,比如異常,死鎖,緩存命中過低,網絡流量較大;三、服務器穩定性的問題,比如內存泄漏……。要發現這些問題起馬的要求要有一款使用的比較稱心的性能分析與優化工具,比如微軟的.NET下就有自己開發的工具,對Borland的Java開發工具中也有類似的工具,但我個人認為更好的工具是Rose下的Purify與Quantify,主要是他對.net 與java ,C++都有支持,而且分析效果特別專業,我們先了解一下Rational Purify, Rational Purify 能自動找出Visual C/C++ 和Java 代碼中與內存有關的錯誤,確保整個應用程序的質量可靠性。在查找典型的Visual C/C++ 程序中的傳統內存訪

      問錯誤,以及Java,C# 代碼中與垃圾內存收集相關的錯誤方面;Rational Quantity 則是一款針對函數級的性能分析利器,使用它你可以從圖形化的界面中得到函數調用的時間,百分比與次數,以及子函數所占時間,使你可以更快的定位性能瓶頸。我們先說性能優化與異常的處理,性能優化有一個原則,即用時間比例最大的進行優化,效果才最明顯,比如有個函數它的執行時間為30秒,如果你優化了一百倍則執行時間為0.3秒,提升了29.7秒,而如果它的執行時間為0.3秒,優化后為0.003秒,實際提升了0.297秒,提升的效果并不明顯,而且寫過程序的人都知道,后者性能優化的代價更大。在性能優化的過程中,一般是先數據庫,后程序,因為數據庫的優化不需要修改程序,修改的風險很小。但如何才能確定是數據庫的問題,這就需要技巧,在使用Quantity時,你一路分析下去,大多數最終會發現,是數據庫查詢函數占用時間比較大,比如什么,SqlCmd.ExecuteNoQuery等等數據庫執行函數,這時你就需要分析數據庫,呵呵。數據庫的分析原則是先索引,后存儲過程,最后表結構視圖的優化,索引的優化是最簡單也是通常最有效的方法,如果合理的使用會帶來意想不到不到的效果。在這里我要給大家簡單的介紹一下我的最愛,SQLProfile,SQL查詢分析器,Precise,SQLProfile是一個SQL語句跟蹤器,可以跟蹤程序流程使用的SQL語句與存儲過程,結合查詢分析器對SQL的分析,可以對索引的優化做出很好的判斷,但索引也不是萬能的,在增刪改較多的表,索引過多會引起這些操作的性能下降,所以判斷還是需要一定的經驗。同時針對用戶使用頻度最高的SQL進行優化也是最行之有效的,這時我則需要Precise,它可以觀測某一個較長時間內的SQL語句的執行情況。數據庫優化的潛能挖光后,如果還是達不到性能要求或是還有問題,則要從程序來進行優化,這是程序員做的事,測試人員要做的,就是告訴他們,哪個函數執行過多引起了性能下降,比如異常過多,某個循環過多,或是DCOM調用過多等等,但說服程序員也是一件不容易的事,你要在這一階段做的出色一定要有幾年的編程經驗,并且要讓程序員感到聽你的性能會有提升,這是一件很不容易的事情哦。

    延伸閱讀

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


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(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>