什么是壓力測試
顧名思義:壓力測試,就是 被測試的系統,在一定的訪問壓力下,看程序運行是否穩定/服務器運行是否穩定(資源占用情況)
比如: 2000個用戶同時到一個購物網站購物,這些用戶打開頁面的速度是否會變慢,或者網站是否會奔潰
做壓力測試的常用工具
做壓力測試,一般要使用工具, 人工是沒辦法做的。 最常用的工具是loadrunner, 但是loadrunner畢竟是收費軟件,而且使用上也比較復雜。 現在越來越多的人開始使用jmeter來做壓力測試。 免費, 而且使用上非常簡單。
做壓力測試的步驟如下:
1. 寫腳本 或者錄制腳本
2. 使用用戶自定義參數
3. 場景設計
4. 使用控制器,來控制 模擬多少用戶。
5. 使用監聽器, 查看測試結果
本文做壓力測試的例子
本文舉的實例是: 在一臺電腦用jmeter模擬200個用戶,同時去使用bing搜索不同的關鍵字, 查看頁面返回的時間是否在正常范圍內。
第一步:使用csvdatasetconfig 來參數化
首先我們把測試需要用到的2個參數放在txt文件中,新建一個data.txt文件,輸入些數據, 一行有兩個數據,用逗號分隔。
啟動jmeter, 先添加一個thread group, 然后添加一個csv data set config (add -> config element -> csv data set config)
第二步:添加http request.
我們添加http 請求,發送get 到http://cn.bing.com/search?q=博客園+小坦克
選擇thread group 右鍵 (add ->sampler -> http request), 需要填的數據如下:
第三步:使用thread group, 控制模擬多少用戶
選中thread group
number of threads(users): 一個用戶占一個線程, 200個線程就是模擬200個用戶
ramp-up period(in seconds): 設置線程需要多長時間全部啟動。如果線程數為200 ,準備時長為10,那么需要1秒鐘啟動20個線程。也就是每秒鐘啟動20個線程。
loop count:每個線程發送請求的次數。如果線程數為200 ,循環次數為10,那么每個線程發送10次請求。總請求數為200*10=2000。如果勾選了“永遠”,那么所有線程會一直發送請求,直到選擇停止運行腳本。
第四步:添加summary report 用來查看測試結果
選中thread group 右鍵(add -> listener -> summary report)
第五步: 運行一下
到目前為止, 腳本就全寫好了, 我們來運行下, 如何看下測試的結果
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。