LoadRunner:頁游壓力測試


一個簡單的LoadRunner測試網頁游戲壓力流程性整理,在此做個備忘。


 

需求:測試頁游戲WebGame的服務器承載能力、並發量

工具:Cacti、LoadRunner、Visual VM

  Cacti:監測服務器的網絡及負載

  LoadRunner:壓力測試腳本的編寫及壓力場景設計

  VisualVM: JVM運行狀態監控


Step1:為什么選擇這樣的工具

  基於http+socket的連接請求,客戶端as、服務器java

  http+socke協議:選擇LoadRunner11中的雙協議[Web(HTTP/HTML))+Windows Sockets]

  服務器java:VisualVM可直接監控JVM運行狀態及分析JVM消耗的軟件

  Cacti:服務器環境搭建於linux的Centos


Step2:錄制腳本

  在LoadRunner11中使用雙協議[Web(HTTP/HTML))+Windows Sockets]進行腳本錄制,先錄制一個角色的登陸

  建議:

    a:游戲的賬號名與角色名保持一致,簡化參數化的復雜度

    b:第一次錄制的時候,盡量簡化在游戲中的操作(過多的操作只會生成過多的LR腳本,增加分析腳本的負擔)

    c:確定錄制到腳本信息的有用性,不要存在有干擾的信息。若本機LR無法正常使用,可選擇安裝一台VM或者找一台純凈的機器進行

  雙協議選擇可參考:http://www.cnblogs.com/s1099312273/archive/2013/05/31/3110878.html


 

Step3:調整腳本(參數化、精簡)

  針對上面錄制的腳本,自己先多看幾編,分析下客戶端真實登陸流程。再與程序溝通,確定正確的登陸與驗證流程。

  需要解決的問題:

    a:登陸時如果通過登陸服、游戲服驗證

    b:簽名驗證如何通過驗證

    c:分析並找出Action.c及data.ws中有可參數化的數據,如角色名,時間戳

    d:刪除不必要的腳本信息

  本階段需要與程序人員進行溝通,了解服務器驗證流程。


Step4:回放腳本、場景創建

  回放Step3中調整后的腳本,確保在Vuser Generator中可正常回放。

  使用Controller創建並發,並創建對應的場景。如:每秒並發100人登陸持續30秒,2000人持續在線20小時等。

  建議:

    a:同一台機器不要登陸過多的游戲賬號,最好分布到不同的機器上

    b:每次在跟場景時,記錄每次登陸時的時間與在游戲中的真實角色的操作感

    c:及時查看每個場景中並發用戶的運行情況

    d:每次測試時,最好把服務器重啟,保證不會存在內存數據,影響數據的准確性


Step5:最大承載、並發量

  調整場景中數據,測試出服務器的最大並發量及最大承載量。

  測試時適當的調整不同場景下的並發量,協調服務器的總負載。

  得到當前服務器的最大承載、並發量


 

Step6:總結

  分析出當前瓶頸,產出測試報告,制定下次測試的計划與目標。


 

  That's all.

 

 

  感謝程序部同學、測試部的兄弟們及網友:天空對我的幫助和支持。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM