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

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

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

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

    LoadRunner如何在大負載下測試

    發布: 2009-9-23 10:15 | 作者: webmaster | 來源: 本站原創 | 查看: 212次 | 進入軟件測試論壇討論

    領測軟件測試網

    LoadRunner如何在大負載下測試   軟件測試工具

    在大負載中使用LoadRunner進行負載測試,需要配置一些環境來滿足大負載下各種資源的充足:

    1.為了避免出現“No Buffer Space Available”的錯誤,需要進行如下配置:

    1)修改注冊表:

    * 設置“HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Par
    ameters\TcpTimedWaitDelay”為 30
    * 設置“HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Par
    ameters\MaxUserPort”為 65534
    * 在“HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session
    Manager\Sub Systems\Windows”設置SharedSection 為 4096

    2)通過在每個腳本的開頭添加如下函數來設置“SHUTDOWN”模式為"ABRUPT"

    web_set_sockets_option(“SHUTDOWN_MODE”,”ABRUPT”)

    2.關閉所有的殺毒,反間諜掃描軟件等。同時也關閉任務掃描和所有不需要的服務。

    3.腳本運行時設置:

    1)設置日志為“只在錯誤發生時發送信息”

    2)去掉錯誤時產生snapshot的選項

    3)在miscellaneous上,去掉 定義每一步為一個事務 的選項

    4)不選擇 模擬瀏覽器緩存,選上“simulate new user on each iteration”和它的子選項

    4.如果下載的頁沒有資源,在web_url函數中添加“Mode=HTTP”,這樣會減少LG上的負載(不用轉換成HTML)。默認情況下,web_url的Mode為Mode=HTML

    5.重啟LG并且確保他們都能跟Controller連接.

    6.確保LG和控制器上有足夠的剩余磁盤空間.

    7.在controller中去掉web page breakdown

    8.限制Vuser在所有LG上同時進行初始化的數目.可以在Controller的Tools > Options > Run-Time Settings中進行修改.每個LG都有這個設置.

    9.限制controller在運行時存儲的錯誤數.通過修改wlrun.ini中的[output]項來實現:

    • FlagLimitOutputMessages=1
    • MaxNumberOfOutputMessages=<errors count> (default is 10,000)

    10.在Controller上修改Monitor的采樣率來降低CPU的使用.可以在Controlller的Tools > Options > Monitors 下修改,如下圖所示:



    11. 如果有很多錯誤產生,最好不要經常打開Error/Output窗口,因為這樣會因為訪問數據庫而打開另外的數據庫連接.

    12.負載測試中不要使用"Show Vuser"選項.

    13.把輸出信息重定向到一個文本文件中來代替輸出到mdb文件中.可以在wlrun7.ini中修改[output]下的

    ExportMessageToFile=1來實現.

    14.不要在Controller機器上運行虛擬用戶.

    15.在場景中設置監視器:

    * 內存使用上 mmdrv進程的private bytes

    * disk使用

    * CPU使用

    * 網絡使用

    16.把腳本中所與打印信息的腳本去掉.如下面的代碼每次迭代都會調用一次,對大量并發用戶的運行產生負面的影響.

    lr_vuser_status_message("pIteration: %s -
    START Action", lr__string("{pIteration}"));
    lr_output_message("pIteration: %s - START Action", lr__string("{pIteration}"));

    Controller處理所有虛擬用戶的信息,這樣會大大降低Controller的性能. 如下是類似的代碼:

    web_reg_find("Text=Time on Server", "SaveCount=cErr", ..);
    web_url( some url …);
    if (atoi(lr__string("{cErr}"))>0) {
    lr_error_message(some message);
    lr_end_transaction("S05_T01_Request_Content_Page", LR_FAIL);
    }

    通常認為在腳本中插入lr_error_message是不好的,除非是調用的客戶化的API失敗了才有必要插入該語句.如果是LoadRunner的函數調用失敗(如上面的web_url調用),它會自動發送一個錯誤消息.

    在大量用戶運行的情況下,控制Controller和LG之間的通信流量是非常重要的.發送多余的信息(錯誤,輸出等信息)會增大通信流量降低負載能力.所以,通常都需要把代碼中不必要的信息去掉.

    17.去掉腳本中所有的sleep()的調用,用lr_think_time()來代替.lr_think_time給LR讓出控制,即LR能夠在Vuser休眠的時候去做其他有用的事情.

    18.不要去掉lr_think_time:使用該函數能更準確的模擬負載,對LG產生相對小的壓力

    19.web_reg_save_param和web_reg_find()函數:

    • 在 web_reg_save_param() 中添加“Notfound=empty” 參數.
    • 在 web_reg_find() 添加 "Savecount=some_parameter_name". 如果你想知道它是否成功可以使用atoi(lr__string("{some_paramater_name }"))來衡量.

    20.其他

    可能會出現的問題:

    * 測試產生了太多的錯誤:

    錯誤引擎不能處理多于1.5GB的錯誤

    如果測試過程中每秒產生多與1000個錯誤,Controller的行為將不可預測

    * 測試產生了大量的在線數據

    上面的兩個問題都可以使用如下的方法解決:

    例如: 場景是一個組有1000個虛擬用戶

    可以把這個組分成兩個組:

    G1 100 Vusers
    G2 900 Vusers

    這兩個組可以跟原始的組產生一樣的負載,對于G2在組命令行中添加如下參數:

    -disable_data -disable_messages

    _disable_data : 讓這個組不發送任信息,不發送任何online信息,不寫任何offline信息.

    _disable_message: 讓這個組不給Controller發送任何信息(錯誤,日志)

    注意:使用上面的命令行選項會使該LG不給congtroller發送online和offline信息.這樣這個組上的虛擬用戶的分析數據就收集不到了.

    21.如果需要遠程訪問,Mercury僅支持PC anywhere.

    翻譯自<LoadRunner Large Load Test Considerations>

    延伸閱讀

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

    TAG: loadrunner LoadRunner Loadrunner loadRunner 負載


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