1、哪些業務需要做壓力測試?
比較常用的功能模塊
單一業務場景或者多業務場景
項目需要做的業務場景
2、壓力測試的並發數是多少?
有預期的數值?一次性達到?有上次性能測試的結果值?
無預期的數值?只有參考的在線用戶數? 2:8原則,可以用在線用戶數的20%作為參考去測試
3、關注哪些參數?
響應時間 1:3:5或者 2:5:8
tps每秒並發的事務數,會有極限值,根據結果去做一個並發數/腳本的調整 采用疊加
錯誤率
cpu (不要超過80%)和內存(至少有20%的空余)的使用情況
隊列<1
磁盤:讀寫操作頻率不要過高
使用Assertion對結果進行簡單的分類:添加在HTTP請求下面
響應斷言:通常是用於每一個request sample進行額外驗證的工具
響應時間的斷言:規定請求的響應時間不能超過多少毫秒
保存測試結果,在查看結果樹:
命令窗口,進入jmenter\bin文件夾下,jmeter -n -t "腳本路徑"
jmeter --help 或者jmeter -h
非GUI模式,即CTL或者Non gui mode,其中-n指non -t指testplan -l指log
-n:non gui mode 無圖形界面模式
-t:testplan待執行的測試計划 jmeter -n -t \scripte\scvRead.jmx
-l:log 輸出解雇報告文件路徑名(.jtl 或者.csv)
-g:輸出報告文件(.csv)
-r/R:remotehosts 分布式指定機器ip,分壓運行
2,指定結果文件及日志路徑:(聚合報告和查看結果樹)
jmeter -n -t test.jmx -l report\result.csv -j report\log.log
結果文件類型為jtl或csv,可通過Jmeter的聚合報告瀏覽結果文件,查看最終的結果
3,Jmeter生成Html報告
Jmeter提供和一個用於生成Html頁面格式圖形化報告的擴展模板,該模板支持通過兩種方式生成多維度圖形化測試報告;
在Jmeter性能測試結束時,自動生產本次測試的HTML圖形化報告
使用一個已有的結果文件(如jtl,csv文件)來生成兩次結果的html圖形化報告
步驟:
1,在jmeter.properties或者user.properties確認如下配置項:
jmeter.save.saveservice.bytes = true
jmeter.save.saveservice.label = true
jmeter.save.saveservice.latency = true
jmeter.save.saveservice.response_code = true
jmeter.save.saveservice.response_message = true
jmeter.save.saveservice.successful = true
jmeter.save.saveservice.thread_counts = true
jmeter.save.saveservice.thread_name = true
jmeter.save.saveservice.time = true
# the timestamp format must include the time and should include the date.
# For example the default, which is milliseconds since the epoch:
jmeter.save.saveservice.timestamp_format = ms
# Or the following would also be suitable
jmeter.save.saveservice.timestamp_format = yyyy/MM/dd HH:mm:ss
jmeter.save.saveservice.assertion_results_failure_message = true
2,在腳本執行完畢后自動生成報告
參考文檔:https://www.cnblogs.com/imyalost/p/10239317.html
基本命令格式:jmeter -n -t <test JMX file> -l <test log file> -e -o <path to output folder>
示范:jmeter -n -t "text.jmx" -l testLogFile.csv -e -o d:\test_result
參數:-e:在腳本運行結束后生成html
-o:保存html報告的路徑,此文件夾必須為空或者不存在
3,Jmeter查看html報告
4,Jmeter壓力測試報告模板