壓測噩夢后的小感想


近幾天有幸接到並完成人生中的第一個壓力測試,2.5天的時間,從0到現在,感觸頗為復雜,特意記錄一下,捋一捋這幾天的收獲。我想分以下幾點展開本文:

  • 接受壓力測試任務時的狀態
  • 執行壓力測試的過程
  • 最后對於這次經歷的一個小總結
  • 下一個階段想做的一點事情

 

剛接到任務時的凌亂

上周四下午,項目組讓復測一個功能,跟領導說了這事兒,本以為手動測測一下功能的瓶頸就夠了,結果快下班的時候,領導說讓寫一個腳本來壓一壓這個功能。其實,從一開始踏進測試大門,我就堅定要學做壓力測試,並且還在寫績效合同時跟領導表達了我這一意向。可如今,突然接到領導這樣的指示,就兩個字——凌亂。

一直只知道loadrunner是做性能測試,但是目前還不知道怎么做,而且,似乎還有點復雜,什么場景設計,一看就懵。后來,同學推薦說可以用jmeter,說很好學用起來easy,我就下了個jmeter,裝了后,看看發現也是先錄制腳本,可以下載個badboy來錄制腳本,跟jmeter關聯可以導出腳本到jmeter,也可以直接用jmeter來錄制。於是down下來jmeter,根據網絡上的教程裝了一下,研究了一下該怎么設置,怎么使用,自己也試着錄制,但是還是不是很明朗。后來同事說公司都統一使用LoadRunner,我就立馬再裝LR了,還好,裝成功了,在我本機。於是LR第一站便開始了。

執行壓力測試的過程

自己從書上、網上學習LR的腳本錄制/腳本重放/controllor的使用/怎樣設計場景,以及對於我現在要做的這個壓力測試,要如何設計場景才比較合適。

首先看到網上以及書上的負載處理的案例,我意識到,領導說的模擬連續向系統導入數據,其實更好的或者說更正確的描述應該還是多用戶並發向系統執行極限數據量導入操作。於是,跟開發的同事確認了,目前除了限制5個用戶,其余響應時間等參數,用戶都未提出需求,而只是我們給用戶做了一些限制。明確了負載的目的:5個用戶並發分別向系統導入15*100*6*400的這種數據,看程序運行是否穩定/服務器運行是否穩定(資源占用情況)。

1、腳本錄制

在錄制過程中,又意識到每個用戶登錄時需要輸入驗證碼,但是驗證碼每次都是變化的,於是借鑒之前自動化測試,也讓該項目組同事將驗證碼屏蔽或者改為萬能驗證碼了。自己就開始錄制腳本,創建事務,插入集合點、檢查點。第一遍都會比較生疏不確定,但大膽操作兩邊就更有底氣了。

2、參數化

書上一直有提到的參數自動化,這一步還是挺模糊,初次接觸壓測,還以為參數化是要定義參數並賦值這樣的。后來書上內容太多,於是請教了同事,將參數化弄明白並完成了參數化。

3、腳本重放

完成參數化,便replay一遍,結果是NO ERROR DETECT. 欣喜地進行下一步,也是最最混沌的——場景設計。

4、場景設計

設計幾個用戶、如何初始化用戶(如幾秒鍾初始化一個)、何時作為集合點最好、是讓其循環跑一段時間還是循環跑完任務就結束。其實,確定了這些,場景設計也差不多了。

5、使用controllor執行腳本

在這個過程中,時常會出現一些問題,比如找不到文件、或者文件是個空文件、或者timeout。

對於找不到文件的問題,百度后發現是錄制時文件在哪里不重要,重要的是在重放腳本、controllor中跑腳本時,文件必須要在腳本的目錄下。

對於文件是個空文件的問題,經常是因為錄制的問題,必須保證錄制時文件的導入執行是正常的,對於功能上的正常報錯,在腳本錄制過程中若出現便會帶來問題。只能重錄了。

而對於timeout的問題,就是http請求/響應的timeout、還有一個server 響應時間的設大一點。第一次改為1000時,發現還可以,后來改為1500都還是不行,不得不改為了10000😓。總算是可以了。

6、Analyse

這一塊兒,應該是性能測試最難的部分,如何評估、優化系統性能——我只能說我還只是個菜鳥💔💔。只能請假一些有經驗的公司同事一致認同的性能測試大神來幫助我了。對於其中有不合理的圖表情況,我就重新造數據再跑了一遍腳本,終究與其余場景結果達成了一致。

終於能出報告了,卻發現,忘了監控服務器資源使用情況。。悲了個大劇!!!於是,在網上查怎么使用LR監控遠程服務器。發現有一步net user這個指令,成功地提示我53系統錯誤,按照網上查的方法找到服務器的lanmanserver開啟,😄😄,打開服務器的管理服務里,根本找不到這個玩意兒,好吧,為了快點出報告,我就先肉眼觀察cou使用情況了。。大神告訴我,我現在最適合肉眼觀察,使用LR遠程監控對於菜鳥來說還是要求有點高。當然,這也將成為了我下一步必須克服的一個困難。

小總結

對於本次經歷,我有兩點想說:

  第一,遇到一個新的任務或者問題,有壓力,也正是成長的時候,常在舒適區,很 難進步;

  第二,做事情最好要有條理,列好清單、流程,還得細心。比如測試過程中,我就是一不小心把文件名寫錯一個數字。

下一階段想做的事

  a、能使用LR執行遠程監控服務器,

  b、熟練使用LR的analyse功能,為項目帶來性能上的優化


免責聲明!

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



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