日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Python locust工具使用詳解

瀏覽:63日期:2022-06-25 17:14:52

今年負責部門的人員培養工作,最近在部門內部分享和講解了locust這個工具,今天再博客園記錄下培訓細節。相信你看完博客,一定可以上手locust這個性能測試框架了。

一、簡介1、優勢

locust是python語言開發的一款的開源的的性能測試框架,他比jmeter更加的輕量級,主要是通過協程(gevent)的方式去實現并發,通過協程的方式可以大幅提高單機的并發能力,同時避免系統級的資源調度。locust具有開源性、分布式、支持高并發,支持webUI的操作方式。

2、劣勢

locust的圖表功能較弱,只展示了很少的數據

locust不支持監控服務端的狀態,需要借助第三方工具,或者自己寫代碼去實現

二、安裝

locust的安裝非常簡單,直接通過pip的方式就可以安裝

pip install locust三、locust的庫和方法介紹1、from locust import task

通過task可以把某個函數指定為任務,直接@task裝飾對應的函數即可,在@tast(n)中可以有一個參數n,意思是這個任務的占比是多少

2、from locust import TaskSet

需要定義一個類,繼承TaskSet這個類,這個是是一個任務集的概念,這個類中可以包括多個task

3、from locust import HttpUser

需要定義一個類,這個類要繼承HttpUser,通過這個定義的類我們可以執行具體的任務集

看了上面的介紹,可能大家有點云里霧里的,下面我們由淺入深看代碼

四、實戰代碼V1.0(入門代碼)1、代碼如下

from locust import HttpLocustfrom locust import HttpUserfrom locust import taskfrom locust import TaskSet#指定一個任務集class My_task_set(TaskSet): #這是某個任務,30是比例,比如這里是30/50 @task(30) def getindex1(self):# client就是個requests對象# catch_response,告訴locust如何判斷請求失敗還是成功res = self.client.get('/bainianminguo/p/10952586.html') @task(20) def getindex2(self):# client就是個requests對象res = self.client.get('/bainianminguo/p/7253930.html') class WebSite(HttpUser): # 指定要執行哪個任務集 tasks = [My_task_set,] # 請求和請求之間最小的間隔時間 min_wait = 1000 # 請求和請求之間最大的間隔時間 max_waif = 20002、進入代碼的目錄,執行如下命令

Python locust工具使用詳解

3、打開瀏覽器,輸入http://localhost:8089/

Python locust工具使用詳解

4、參數講解

Number of total users to simulate 模擬的總的用戶數

Spawn rate 每秒鐘新增的用戶數

五、實戰代碼V1.1(入門代碼)1、任務集類中的on_start方法

class My_task_set(TaskSet): #添加初始化方法 def on_start(self):print('類似類中的構造方法,每個用戶在任務開始前,只執行一次,在這里可以定義一個對象的屬性,這樣其它測試集就可以使用這個屬性')

這個方法類似pytest框架中的前置條件或者說是面向對象中的構造方法

2、任務集類中的on_start方法

def on_stop(self): print('類似類中的后置方法,每個用戶在任務開始后,只執行一次,在這里可以定義一個對象的屬性,這樣其它測試集就可以使用這個屬性')六、實戰代碼V1.2(入門代碼)1、如何判斷請求是失敗還是成功

Python locust工具使用詳解

2、然后再響應的消息中指定判斷邏輯即可,success即為成功,failure即為失敗

Python locust工具使用詳解

七、實戰代碼V1.3(全量代碼)

from locust import HttpLocustfrom locust import HttpUserfrom locust import taskfrom locust import TaskSet # locust中的client會自動幫我們處理cookies。類似request.session(),所以如果我們登陸的時候,只需要在on_start中登陸一次就可以了 # 如果在locust中,如果url是不需要統計,則我們不要用clent去訪問api,應該用request去訪問,這樣就locust就不會統計request庫發起的請請求#指定一個任務集class My_task_set(TaskSet): #添加初始化方法 def on_start(self):print('類似類中的構造方法,每個用戶在任務開始前,只執行一次,在這里可以定義一個對象的屬性,這樣其它測試集就可以使用這個屬性') def on_stop(self):print('類似類中的后置方法,每個用戶在任務開始后,只執行一次,在這里可以定義一個對象的屬性,這樣其它測試集就可以使用這個屬性') #這是某個任務,30是比例,比如這里是30/50 @task(30) def getindex1(self):# client就是個requests對象# catch_response,告訴locust如何判斷請求失敗還是成功res = self.client.get('/bainianminguo/p/10952586.html',catch_response=True)if res.code == 200: res.success()else: res.failure('ff')print(res) @task(20) def getindex2(self):# client就是個requests對象res = self.client.get('/bainianminguo/p/7253930.html')print(res) class WebSite(HttpUser): # 指定要執行哪個任務集 # task_set = My_task_set tasks = [My_task_set,] # 請求和請求之間最小的間隔時間 min_wait = 1000 # 請求和請求之間最大的間隔時間 max_waif = 2000 # Number of total users to simulate 模擬的用戶數# Spawn rate 每秒鐘產生的用戶數八、常見問題1、cookies

locust中的client會自動幫我們處理cookies。類似request.session(),所以如果我們登陸的時候,只需要在on_start中登陸一次就可以了

2、多統計api的問題

如果在locust中,如果url是不需要統計,則我們不要用clent去訪問api,應該用request去訪問,這樣就locust就不會統計request庫發起的請請求

九、分布式調用的問題

一旦單臺機器不夠模擬足夠多的用戶時,Locust支持運行在多臺機器中進行壓力測試。 為了實現這個,你應該在 master 模式中使用--master標記來啟用一個 Locust 實例。這個實例將會運行你啟動測試的 Locust 交互網站并查看實時統計數據。<br>master 節點的機器自身不會模擬任何用戶。相反,你必須使用 --slave 標記啟動一臺到多臺 Locustslave 機器節點,與標記 --master-host 一起使用(指出master機器的IP/hostname)。 常用的做法是在一臺獨立的機器中運行master,在slave機器中每個處理器內核運行一個slave實例。 注意:master 和每一臺 slave 機器,在運行分布式測試時都必須要有 locust 的測試文件。

在 master 模式下啟動 Locust: locust -f my_loucstfile.py --master 在每個 slave 中執行(192.168.0.14 替換為你 msater 的IP): locust -f my_locustfile.py --slave --master-host=192.168.0.14

Python locust工具使用詳解

以上就是Python locust工具使用詳解的詳細內容,更多關于Python locust工具的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产激情一区| 久久99影视| 国产999精品在线观看| 国产精一区二区| 国产精品毛片视频| 欧美国产专区| 成人片免费看| 99精品视频在线| 国产精品美女久久久浪潮软件| 国产亚洲激情| 欧美天堂一区| 精品视频在线一区二区在线| 亚洲精品国产嫩草在线观看 | 久久精品青草| 激情久久久久久| 一区二区高清| 国产精品久久久久久久久久齐齐 | 日韩不卡视频在线观看| 亚洲精品va| 亚洲精品国产日韩| 久久精品亚洲| 国产一区清纯| 欧美一区在线观看视频| 国产精品主播在线观看| 福利一区二区三区视频在线观看| 99国产精品免费视频观看| 午夜在线精品| 国产精品宾馆| 精品欧美激情在线观看| 日韩成人一级| 日韩精品第一区| 丝袜国产日韩另类美女| 国产激情综合| 国产一区二区高清| 韩日一区二区| 日韩中文欧美在线| 精品91福利视频| 视频精品一区二区| 老司机精品在线| 亚洲欧美日韩国产一区二区| 欧美激情亚洲| 热久久免费视频| www.51av欧美视频| 日韩在线视频一区二区三区| 都市激情国产精品| 日韩欧美中文字幕电影| 午夜av成人| 久久a爱视频| 中文字幕一区二区三区日韩精品 | 国产精品1luya在线播放| 国产精品97| 欧美成人一二区| 蜜桃一区二区三区在线观看| 秋霞国产精品| 精品久久免费| 日本一区二区三区中文字幕| 99精品国产一区二区三区| 国产精品66| 日本免费一区二区视频| 五月天久久久| av免费不卡国产观看| 日韩av在线免费观看不卡| 国精品一区二区| 四季av一区二区凹凸精品| 97久久亚洲| 在线精品福利| 欧美日韩国产欧| 成人va天堂| 精品国产网站| 国产精品亲子伦av一区二区三区| 麻豆91精品| 好看不卡的中文字幕| 日韩在线观看| 国产精品久久久久久久久妇女| 91精品麻豆| 亚洲一区二区免费在线观看| 久久国产亚洲| 国产v日韩v欧美v| 成人在线视频区| 久久成人av| 国产精品xxxav免费视频| 777久久精品| 日韩欧乱色一区二区三区在线| 亚洲一区二区三区四区五区午夜 | 欧美激情三区| 国产精品久久国产愉拍| 国产欧美丝祙| 国产精品一区二区美女视频免费看| 日韩一区二区久久| 国产精品视区| 蜜臀av亚洲一区中文字幕| 爽好多水快深点欧美视频| 国产精品美女久久久| 欧美日韩国产免费观看| 亚洲激情婷婷| 免费久久99精品国产自在现线| 欧美aaaaaa午夜精品| 久久香蕉国产| 成人va天堂| 狠狠操综合网| 日韩中文欧美在线| 中文字幕日韩欧美精品高清在线| 六月婷婷一区| 精品日韩毛片| 亚洲免费中文| 亚洲欧洲日韩| 97精品国产99久久久久久免费| 国产一卡不卡| 久久久久97| 国产欧洲在线| 欧美+日本+国产+在线a∨观看| 欧美另类综合| 亚洲bt欧美bt精品777| 日韩中文av| 欧美激情99| 久久国产电影| 视频一区日韩精品| 国产精品一区二区99| 卡一卡二国产精品| 精品久久视频| 蜜桃tv一区二区三区| 一区二区三区网站| 欧美日韩亚洲三区| av资源中文在线天堂| 欧美日韩国产探花| 日本亚洲不卡| 国产精品成人a在线观看| 国产主播一区| 欧美在线综合| 久久av综合| 婷婷综合亚洲| 国产欧美另类| 伊人久久大香线蕉av不卡| 热久久久久久久| 麻豆传媒一区二区三区| 日韩精品一卡| 日本电影久久久| 日韩久久精品| 亚洲永久精品唐人导航网址| 国产精品美女久久久久久不卡| 国产91精品对白在线播放| 亚洲精品观看| 日韩国产激情| 亚洲+小说+欧美+激情+另类| 精品国产一区二区三区性色av| 久久婷婷亚洲| 91精品国产自产精品男人的天堂| 成人日韩在线观看| 中文视频一区| 久久久久久一区二区| 蜜桃一区二区三区在线观看| 国产a亚洲精品| 美女久久网站| 激情国产在线| 日韩高清二区| 欧美亚洲在线日韩| 国产丝袜一区| 日韩一区二区免费看| 黄色网一区二区| 日本不卡不码高清免费观看| 91精品精品| 国产精品主播| 在线看片日韩| 久久精品影视| 国产伦精品一区二区三区千人斩| 亚洲福利久久| 高清一区二区三区| 日韩欧美2区| 亚洲综合国产| 偷拍精品精品一区二区三区| 国产三级精品三级在线观看国产| 亚洲激情av| 精品免费av在线| 麻豆传媒一区二区三区| 日韩美女精品| 欧美在线影院| 欧美日韩水蜜桃| 国产高潮在线| 狂野欧美性猛交xxxx| 亚洲区国产区| 香蕉久久久久久久av网站| 水蜜桃久久夜色精品一区| 国产日韩欧美在线播放不卡| 久久亚洲风情| 美女久久久久| 日本精品不卡| 在线天堂资源www在线污| 国产精品日韩精品在线播放| 日韩三级一区| 日本一区二区三区中文字幕| 日本大胆欧美人术艺术动态| 精品1区2区3区4区| 91精品一区二区三区综合| 卡一精品卡二卡三网站乱码| 日韩精品国产精品| 男女男精品视频网| 美女精品在线| 日本 国产 欧美色综合| 美女久久网站| 在线精品国产亚洲|