校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Python locust工具使用詳解

Python locust工具使用詳解

熱門標簽:400電話 申請 條件 電銷機器人 金倫通信 鄭州智能外呼系統(tǒng)中心 云南地圖標注 南京crm外呼系統(tǒng)排名 crm電銷機器人 汕頭電商外呼系統(tǒng)供應商 北京外呼電銷機器人招商 賓館能在百度地圖標注嗎

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

一、簡介

1、優(yōu)勢

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

2、劣勢

locust的圖表功能較弱,只展示了很少的數(shù)據(jù)

locust不支持監(jiān)控服務端的狀態(tài),需要借助第三方工具,或者自己寫代碼去實現(xiàn)

二、安裝

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

	
pip install locust

三、locust的庫和方法介紹

1、from locust import task

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

2、from locust import TaskSet

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

3、from locust import HttpUser

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

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

四、實戰(zhàn)代碼V1.0(入門代碼)

1、代碼如下

from locust import HttpLocust
from locust import HttpUser
from locust import task
from 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):
    # 指定要執(zhí)行哪個任務集
    tasks = [My_task_set,]
    # 請求和請求之間最小的間隔時間
    min_wait = 1000
    # 請求和請求之間最大的間隔時間
    max_waif = 2000

2、進入代碼的目錄,執(zhí)行如下命令

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

4、參數(shù)講解

Number of total users to simulate 模擬的總的用戶數(shù)

Spawn rate 每秒鐘新增的用戶數(shù)

五、實戰(zhàn)代碼V1.1(入門代碼)

1、任務集類中的on_start方法

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

這個方法類似pytest框架中的前置條件或者說是面向?qū)ο笾械臉?gòu)造方法

2、任務集類中的on_start方法

def on_stop(self):
    print("類似類中的后置方法,每個用戶在任務開始后,只執(zhí)行一次,在這里可以定義一個對象的屬性,這樣其它測試集就可以使用這個屬性")

六、實戰(zhàn)代碼V1.2(入門代碼)

1、如何判斷請求是失敗還是成功

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

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

from locust import HttpLocust
from locust import HttpUser
from locust import task
from locust import TaskSet
 
# locust中的client會自動幫我們處理cookies。類似request.session(),所以如果我們登陸的時候,只需要在on_start中登陸一次就可以了
 
# 如果在locust中,如果url是不需要統(tǒng)計,則我們不要用clent去訪問api,應該用request去訪問,這樣就locust就不會統(tǒng)計request庫發(fā)起的請請求
#指定一個任務集
class My_task_set(TaskSet):
 
    #添加初始化方法
    def on_start(self):
        print("類似類中的構(gòu)造方法,每個用戶在任務開始前,只執(zhí)行一次,在這里可以定義一個對象的屬性,這樣其它測試集就可以使用這個屬性")
 
    def on_stop(self):
        print("類似類中的后置方法,每個用戶在任務開始后,只執(zhí)行一次,在這里可以定義一個對象的屬性,這樣其它測試集就可以使用這個屬性")
 
    #這是某個任務,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):
    # 指定要執(zhí)行哪個任務集
    # task_set = My_task_set
 
    tasks = [My_task_set,]
    # 請求和請求之間最小的間隔時間
    min_wait = 1000
    # 請求和請求之間最大的間隔時間
    max_waif = 2000
 
 
# Number of total users to simulate   模擬的用戶數(shù)
# Spawn rate                          每秒鐘產(chǎn)生的用戶數(shù)

八、常見問題

1、cookies

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

2、多統(tǒng)計api的問題

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

九、分布式調(diào)用的問題

一旦單臺機器不夠模擬足夠多的用戶時,Locust支持運行在多臺機器中進行壓力測試。
 
為了實現(xiàn)這個,你應該在 master 模式中使用--master標記來啟用一個 Locust 實例。這個實例將會運行你啟動測試的 Locust 交互網(wǎng)站并查看實時統(tǒng)計數(shù)據(jù)。br>master 節(jié)點的機器自身不會模擬任何用戶。相反,你必須使用 --slave 標記啟動一臺到多臺 Locustslave 機器節(jié)點,與標記 --master-host 一起使用(指出master機器的IP/hostname)。
 
常用的做法是在一臺獨立的機器中運行master,在slave機器中每個處理器內(nèi)核運行一個slave實例。
 
注意:master 和每一臺 slave 機器,在運行分布式測試時都必須要有 locust 的測試文件。
在 master 模式下啟動 Locust:
 
locust -f my_loucstfile.py --master
 
在每個 slave 中執(zhí)行(192.168.0.14 替換為你 msater 的IP):
 
locust -f my_locustfile.py --slave --master-host=192.168.0.14

以上就是Python locust工具使用詳解的詳細內(nèi)容,更多關(guān)于Python locust工具的資料請關(guān)注腳本之家其它相關(guān)文章!

您可能感興趣的文章:
  • python性能測試工具locust的使用
  • Python性能測試工具Locust安裝及使用
  • 基于python locust庫實現(xiàn)性能測試
  • Python 3.6 性能測試框架Locust安裝及使用方法(詳解)

標簽:浙江 文山 懷化 西寧 昆明 石家莊 錫林郭勒盟 梅州

巨人網(wǎng)絡通訊聲明:本文標題《Python locust工具使用詳解》,本文關(guān)鍵詞  Python,locust,工具,使用,詳解,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Python locust工具使用詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于Python locust工具使用詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    日韩欧美一区二区三区在线| 中文字幕免费观看一区| 91麻豆自制传媒国产之光| 亚洲国产高清不卡| 色8久久精品久久久久久蜜| 国产精品久久久一区麻豆最新章节| 亚洲线精品一区二区三区八戒| 欧美猛男gaygay网站| 无码av免费一区二区三区试看| 欧美第一区第二区| 欧美丝袜丝交足nylons图片| 国产精品一区二区久久精品爱涩| 亚洲欧美另类图片小说| 日韩一级片在线观看| 一本久久a久久免费精品不卡| av中文字幕在线不卡| 久久精品国产在热久久| 日韩美女啊v在线免费观看| 欧美不卡视频一区| 欧美三级电影一区| 99re热视频精品| 久久黄色级2电影| 亚洲一区电影777| 国产精品久久久久久久久免费樱桃| 日韩欧美国产不卡| 懂色av噜噜一区二区三区av| 亚洲成av人片一区二区| 亚洲色图都市小说| 国产欧美日韩三区| 精品少妇一区二区三区日产乱码| 欧美唯美清纯偷拍| 国产高清亚洲一区| 久久机这里只有精品| 日韩高清在线一区| 亚洲成人免费观看| 亚洲影视在线播放| 亚洲一区二区三区视频在线播放| 亚洲精品五月天| 亚洲天堂成人在线观看| 综合色天天鬼久久鬼色| 国产精品久久久久久福利一牛影视| 国产亚洲自拍一区| 国产视频视频一区| 久久久久99精品一区| 久久精品亚洲精品国产欧美kt∨| 精品999在线播放| 久久色在线观看| 中文字幕免费一区| 亚洲少妇最新在线视频| 一区二区三区四区av| 一区二区三区精品| 亚洲国产精品一区二区久久| 亚洲mv大片欧洲mv大片精品| 婷婷久久综合九色综合绿巨人| 亚洲成人综合网站| 免费高清在线一区| 国产精品一区在线观看乱码| 91玉足脚交白嫩脚丫在线播放| 粉嫩av亚洲一区二区图片| 成人v精品蜜桃久久一区| 91小宝寻花一区二区三区| 99久久er热在这里只有精品66| 色哟哟在线观看一区二区三区| 91国产福利在线| 制服丝袜av成人在线看| 久久久综合精品| 午夜不卡在线视频| 精品久久久久一区二区国产| 国产女主播视频一区二区| 亚洲图片激情小说| 视频一区二区国产| 黄一区二区三区| www.在线欧美| 欧美日本一区二区三区| 久久品道一品道久久精品| 综合色天天鬼久久鬼色| 日本伊人色综合网| 国产成人精品免费网站| 欧美亚洲动漫精品| www国产亚洲精品久久麻豆| 国产精品狼人久久影院观看方式| 一区二区三区 在线观看视频| 日韩av在线播放中文字幕| 成人综合婷婷国产精品久久免费| 色婷婷av一区二区| 精品成人在线观看| 亚洲精品综合在线| 另类小说图片综合网| 99久久精品99国产精品| 91精品国产品国语在线不卡| 国产精品视频观看| 秋霞影院一区二区| 白白色亚洲国产精品| 91麻豆精品国产91久久久资源速度 | 久久97超碰色| 92精品国产成人观看免费 | 青草国产精品久久久久久| 国产成人免费视频精品含羞草妖精 | 精品中文字幕一区二区| 成人黄色在线视频| 91在线观看污| 91精品国产免费| 精品久久久久久久久久久久久久久| 国产午夜精品久久久久久久| 一区二区三区在线看| 国产丝袜欧美中文另类| 国产伦精一区二区三区| 亚洲永久精品国产| 丰满少妇久久久久久久| 97精品超碰一区二区三区| 国产乱码精品一区二区三区av | 婷婷夜色潮精品综合在线| 国产性做久久久久久| 欧美亚日韩国产aⅴ精品中极品| 欧美一级国产精品| 中文字幕一区二区三区不卡在线| 自拍av一区二区三区| 色婷婷综合五月| 亚洲.国产.中文慕字在线| 中文字幕免费在线观看视频一区| ...av二区三区久久精品| 亚洲日穴在线视频| 日韩成人dvd| 国产精品不卡视频| 中文字幕综合网| 国产在线精品一区二区不卡了| 久久久精品tv| 91福利区一区二区三区| 亚洲丝袜精品丝袜在线| 亚洲女人的天堂| 国产丝袜欧美中文另类| 奇米一区二区三区av| 久久理论电影网| 欧美日韩国产免费一区二区| 欧美xxx久久| 亚洲大片在线观看| 国产成人av电影在线播放| 欧美性欧美巨大黑白大战| 精品久久人人做人人爱| 综合久久国产九一剧情麻豆| 国产欧美一区二区在线| 日韩综合小视频| 国产一区高清在线| 日本高清不卡aⅴ免费网站| 国产精品一色哟哟哟| 国产成人亚洲综合a∨猫咪| 亚洲成人动漫一区| 亚洲美女免费视频| 久久久99免费| 精品国产乱码久久久久久闺蜜| 免费人成黄页网站在线一区二区| jlzzjlzz亚洲女人18| 一区二区三区蜜桃网| 99久久er热在这里只有精品15 | 99久久免费视频.com| 成人精品高清在线| 粉嫩高潮美女一区二区三区| 青椒成人免费视频| 精品国产免费人成电影在线观看四季| 成人中文字幕电影| 国产在线观看免费一区| 久久亚洲二区三区| 日本韩国一区二区| 亚洲国产一区二区三区| 亚洲天堂免费在线观看视频| 在线观看一区二区视频| 91精品国产综合久久久蜜臀粉嫩| 日韩精品专区在线| 精品一区二区国语对白| 欧美精品九九99久久| 国产精品一区二区在线播放| 午夜欧美一区二区三区在线播放| 欧美成人猛片aaaaaaa| 欧美性受极品xxxx喷水| 精品国产欧美一区二区| 日韩激情一二三区| 97se亚洲国产综合在线| 99re成人精品视频| 国产精品理论片在线观看| 一本色道久久综合亚洲91 | 色哟哟日韩精品| 久久精品网站免费观看| 欧美三级日本三级少妇99| 不卡的av电影| 欧美国产日韩亚洲一区| 欧美日韩精品欧美日韩精品 | 在线亚洲高清视频| 九色porny丨国产精品| 不卡视频在线观看| 国内偷窥港台综合视频在线播放| 亚洲午夜电影在线| 亚洲香肠在线观看| 国内精品国产三级国产a久久| 日本大胆欧美人术艺术动态| 国产毛片精品国产一区二区三区| 亚洲激情自拍偷拍| 久久久五月婷婷| 欧美va天堂va视频va在线| 欧美吻胸吃奶大尺度电影| 国产乱对白刺激视频不卡|