精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Locust性能測試工具核心技術(shù)@task和@events

開發(fā) 開發(fā)工具
Tasks和Events是Locust性能測試工具的核心技術(shù),有了它們,Locust才能稱得上是一個性能工具。

[[403128]]

本文轉(zhuǎn)載自微信公眾號「dongfanger」,作者dongfanger。轉(zhuǎn)載本文請聯(lián)系dongfanger公眾號。

Tasks和Events是Locust性能測試工具的核心技術(shù),有了它們,Locust才能稱得上是一個性能工具。

Tasks

從上篇文章知道,locustfile里面必須要有一個類,繼承User類,當(dāng)性能測試開始后,會產(chǎn)生一個User類實(shí)例,這就是常說的模擬用戶。這些用戶會選擇task執(zhí)行,休眠一會,再選擇新的task,不斷迭代。

task是Python中的可調(diào)用對象,它是一項(xiàng)任務(wù),對于Web系統(tǒng)來說,可以是登錄、查詢、下訂單、支付等等。

@task裝飾器

@task是定義task最簡單直接的方式,比如:

  1. from locust import User, task, constant 
  2.  
  3. class MyUser(User): 
  4.     wait_time = constant(1) 
  5.  
  6.     @task 
  7.     def my_task(self): 
  8.         print("User instance (%r) executing my_task" % self) 

@task有一個可選參數(shù),用來設(shè)置task的選擇權(quán)重,比如:

  1. from locust import User, task, between 
  2.  
  3. class MyUser(User): 
  4.     wait_time = between(5, 15) 
  5.  
  6.     @task(3) 
  7.     def task1(self): 
  8.         pass 
  9.  
  10.     @task(6) 
  11.     def task2(self): 
  12.         pass 

task2比task1被選擇的可能性大兩倍。

tasks屬性

除了@task裝飾器,還可以設(shè)置User類的tasks屬性來定義任務(wù),比如:

  1. from locust import User, constant 
  2.  
  3. def my_task(user): 
  4.     pass 
  5.  
  6. class MyUser(User): 
  7.     tasks = [my_task] 
  8.     wait_time = constant(1) 

注意,my_task()函數(shù)有一個參數(shù),它是User類的實(shí)例。

tasks可以是一個列表:

  1. tasks = [my_task1, my_task2, my_task3] 

Locust會使用Python中的random.choice()從里面隨機(jī)選取。

tasks也可以是一個字典:

  1. {my_task: 3, another_task: 1} 

后面的int型鍵值代表的是被選擇權(quán)重,這個字典等價(jià)于列表:

  1. [my_task, my_task, my_task, another_task] 

@tag裝飾器

@tag用來打標(biāo)記,在運(yùn)行時(shí)選擇哪些task執(zhí)行,哪些task不執(zhí)行。比如:

  1. class MyUser(User): 
  2.     wait_time = constant(1) 
  3.  
  4.     @tag('tag1'
  5.     @task 
  6.     def task1(self): 
  7.         pass 
  8.  
  9.     @tag('tag1''tag2'
  10.     @task 
  11.     def task2(self): 
  12.         pass 
  13.  
  14.     @tag('tag3'
  15.     @task 
  16.     def task3(self): 
  17.         pass 
  18.  
  19.     @task 
  20.     def task4(self): 
  21.         pass 
  • 如果使用--tags tag1,那么只有task1和task2會被選擇。
  • 如果使用--tags tag2 tag3,那么只有task2和task3會被選擇。
  • 如果使用--exclude-tags tag3,那么只有task1、task2和task4會被選擇。

注意,exclude的優(yōu)先級更高,如果某個tag既包括又排除,那么會被排除。

Events

@task定義了性能測試的執(zhí)行動作,@events作為補(bǔ)充,定義了測試開始前和測試結(jié)束后的處理。

注意,每個模擬用戶開始和結(jié)束的處理是使用的User類的on_start()和on_stop()方法。

test_start和test_stop

測試開始前和測試結(jié)束后觸發(fā)。示例:

  1. from locust import events 
  2.  
  3. @events.test_start.add_listener 
  4. def on_test_start(environment, **kwargs): 
  5.     print("A new test is starting"
  6.  
  7. @events.test_stop.add_listener 
  8. def on_test_stop(environment, **kwargs): 
  9.     print("A new test is ending"

分布式執(zhí)行時(shí),它們只會在master節(jié)點(diǎn)生效。

init

init和test_start不同,它會在每個Locust進(jìn)程開始時(shí)觸發(fā),分布式執(zhí)行時(shí),每個節(jié)點(diǎn)(worker進(jìn)程)都會生效。

  1. from locust import events 
  2. from locust.runners import MasterRunner 
  3.  
  4. @events.init.add_listener 
  5. def on_locust_init(environment, **kwargs): 
  6.     if isinstance(environment.runner, MasterRunner): 
  7.         print("I'm on master node"
  8.     else
  9.         print("I'm on a worker or standalone node"

Events是一項(xiàng)hook技術(shù),在學(xué)習(xí)Locust高級用法時(shí)再做進(jìn)一步介紹。

Locust項(xiàng)目結(jié)構(gòu)

官方建議如下:

common/

__init__.py

auth.py

config.py

locustfile.py或者locustfiles/

api.py

website.py

requirements.txt

FastHttpUser

從上篇文章可以知道,HttpUser類比User類更常用,它的client屬性是HttpSession類(requests.Session子類)的一個實(shí)例,可以使用requests發(fā)HTTP請求:

  1. # 使用HttpUser 
  2. from locust import HttpUser,task,constant 
  3.  
  4.  
  5. class MyUser(User): 
  6.     wait_time = constant(1) 
  7.      
  8.     @task 
  9.     def my_task1(self): 
  10.         with self.client.get("https://www.baidu.com/", catch_response=Trueas res: 
  11.             if res.status_code == 200: 
  12.                 print("成功"
  13.             else
  14.                 print("失敗"

但是requests性能是不太好的,如果要產(chǎn)生更高的壓力,建議使用FastHttpUser,性能可以提升5到6倍:

  1. # 使用FastHttpUser 
  2. from locust import task, constant 
  3. from locust.contrib.fasthttp import FastHttpUser 
  4.  
  5.  
  6. class MyUser(FastHttpUser): 
  7.     wait_time = constant(1) 
  8.  
  9.     @task 
  10.     def my_task(self): 
  11.         with self.client.get("https://www.baidu.com/", catch_response=Trueas response: 
  12.             if response.status_code == 200: 
  13.                 print("成功"
  14.             else
  15.                 print("失敗"

由于它們的API不一樣,都有各自的適用場景,所以FastHttpUser不能完全替代HttpUser。

小結(jié)

本文嚴(yán)格來說是上篇文章《locustfile中的User類和HttpUser類》的下篇,介紹了核心技術(shù)Tasks和Events,并給出了官方推薦的項(xiàng)目結(jié)構(gòu),最后介紹了比HttpUser性能更好的FastHttpUser,如果想要更多的并發(fā),可以考慮使用后者。經(jīng)過這兩篇文章的學(xué)習(xí),已經(jīng)可以開始動手實(shí)踐使用Locust進(jìn)行性能測試了。如果使用locust命令啟動后,無法打開網(wǎng)頁,可以試試加上參數(shù):locust --web-host="127.0.0.1"。

參考資料:

https://zhuanlan.zhihu.com/p/118470760

https://docs.locust.io/en/stable/writing-a-locustfile.html#tasks

https://www.axihe.com/tools/locust/increase-performance.html

 

https://blog.csdn.net/u012002125/article/details/113363768

 

責(zé)任編輯:武曉燕 來源: dongfanger
相關(guān)推薦

2021-05-07 07:27:51

Python測試工具

2010-06-04 16:07:09

Linux 性能測試工

2010-06-07 14:42:47

Linux性能測試工具

2012-08-01 10:50:48

性能測試測試架構(gòu)

2025-01-27 11:52:23

2024-08-23 11:38:05

2025-01-26 11:05:23

2010-06-13 17:16:15

Linux性能測試工具

2024-03-06 18:09:06

Linux性能工具

2016-09-14 11:09:06

Web工具運(yùn)維

2010-06-04 09:12:23

Linux性能測試工具

2010-10-15 09:37:14

MySQL性能測試

2012-12-24 22:54:31

2010-06-10 17:37:08

Linux 性能測試工

2017-09-19 18:34:16

Mysql數(shù)據(jù)庫性能測試

2023-07-13 23:21:02

2011-04-07 13:53:25

Web工具

2022-05-07 14:31:46

物聯(lián)網(wǎng)

2021-05-17 10:44:24

Python 工具編程語言

2009-06-26 10:22:58

JSF測試
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

日韩成人小视频| 亚洲大尺度视频在线观看| 国产欧美日韩精品丝袜高跟鞋| 亚洲少妇xxx| 中文字幕久久精品一区二区| 高跟丝袜欧美一区| 亚洲视频欧美在线| 欧美一级在线免费观看| 久久综合网络一区二区| 久久综合亚洲社区| 一区二区三区免费在线观看视频 | 毛片精品免费在线观看| 欧美大喷水吹潮合集在线观看| 五月激情久久| 亚洲线精品一区二区三区八戒| 蜜桃久久精品乱码一区二区 | 精品亚洲国内自在自线福利| 欧美一级淫片播放口| 91香蕉一区二区三区在线观看| 久久精品国产亚洲5555| 欧美情侣在线播放| 各处沟厕大尺度偷拍女厕嘘嘘| 国产在线观看免费麻豆| 97久久超碰精品国产| 91嫩草国产在线观看| 小泽玛利亚一区二区三区视频| 精品白丝av| 久久精品视频在线播放| 波多野结衣av在线观看| 久草精品视频| 日韩欧美你懂的| 欧美wwwwwww| 日韩欧美精品电影| 狠狠操狠狠色综合网| 欧美亚洲色图视频| 直接在线观看的三级网址| 国产精品日产欧美久久久久| 牛人盗摄一区二区三区视频| 欧美一级性视频| 国产福利一区二区三区在线视频| 成人亚洲综合色就1024| 在线观看免费黄色小视频| 久久午夜视频| 精品视频999| 亚洲久久一区| 亚洲电影在线观看| 少妇熟女视频一区二区三区 | 亚洲国产精品综合久久久| 在线观看欧美日韩| 永久免费成人代码| 国产剧情一区| 国产亚洲欧美一区| 色欲狠狠躁天天躁无码中文字幕| 校花撩起jk露出白色内裤国产精品| 欧美精品一区二区三区四区| 精品人妻一区二区免费| 99热这里只有精品首页| 欧美成人在线直播| 蜜桃视频无码区在线观看| 日韩视频一区二区三区四区| 欧美成人一区二区三区在线观看| 丰满人妻一区二区三区53视频| 嫩呦国产一区二区三区av| 日韩女优制服丝袜电影| 中文字幕人妻一区| 日韩mv欧美mv国产网站| 亚洲理论在线a中文字幕| a级大片在线观看| 成人嫩草影院| 草民午夜欧美限制a级福利片| 国产成人久久久久| 亚洲国产欧美国产综合一区| 欧美又大又粗又长| 中文字幕第一页在线播放| 精品亚洲porn| 国产精品v欧美精品v日韩精品| 熟妇人妻系列aⅴ无码专区友真希 熟妇人妻av无码一区二区三区 | 高清欧美性猛交| 尤物视频在线观看国产| 视频在线观看一区| 成人h视频在线| 国产香蕉在线观看| 国产色婷婷亚洲99精品小说| 亚洲一区二区三区精品动漫| 最新国产在线拍揄自揄视频| 污片在线观看一区二区| 色七七在线观看| 精品一区二区三区四区五区 | 亚洲韩日在线| 日产精品99久久久久久| 一级爱爱免费视频| av不卡在线播放| 无遮挡亚洲一区| 欧美1—12sexvideos| 日本黄色一区二区| 深夜福利网站在线观看| 亚洲人挤奶视频| 久久av资源网站| 精品不卡一区二区| 国产伦精一区二区三区| 久久久一本精品99久久精品| 日本在线www| 好吊成人免视频| 91香蕉国产线在线观看| 精品国产中文字幕第一页| 欧美精品一区三区| 国产精品免费无遮挡无码永久视频| 国产一区二区三区高清播放| 蜜桃麻豆91| 欧美24videosex性欧美| 欧美日韩专区在线| 精品无码在线视频| 欧美日韩国产精品一区二区亚洲| 国产精品成人久久久久| 色婷婷av一区二区三| 国产精品拍天天在线| 日本免费不卡一区二区| 美女日韩一区| 色偷偷88888欧美精品久久久| 久久夜靖品2区| 国产精一区二区三区| 日韩中文字幕av在线| 美女的胸无遮挡在线观看| 7878成人国产在线观看| 国产三级短视频| 国产精品一页| 精品卡一卡二| 国内高清免费在线视频| 91精品国产综合久久精品 | 欧美影院三区| 人人澡人人澡人人看欧美| 黄色av免费观看| 一区二区三区四区亚洲| 日韩av一卡二卡三卡| 日韩国产综合| 国产精品三级网站| 国产人成在线观看| 日本电影亚洲天堂一区| 亚洲最大成人网站| 亚洲作爱视频| 激情小说综合区| 爱情岛亚洲播放路线| 日韩免费观看高清完整版| 国产女人18水真多毛片18精品 | 成人啪啪18免费游戏链接| 亚洲色图网站| 97夜夜澡人人双人人人喊| 国产网站在线免费观看| 91精品一区二区三区久久久久久 | 黄色av网站在线| 欧美性猛交xxxx| 亚洲区免费视频| 日本免费新一区视频| 婷婷亚洲婷婷综合色香五月| 小明成人免费视频一区| 在线观看久久久久久| 一区二区视频免费观看| 国产精品乱码妇女bbbb| 日日干日日操日日射| 欧美一区二区三区免费看| 99久久精品免费看国产一区二区三区 | 电影91久久久| 九九久久综合网站| 欧美自拍偷拍第一页| 狠狠躁夜夜躁人人爽天天天天97| 中文字幕一区二区三区人妻不卡| 久久九九国产| 一区二区精品在线| 一区三区自拍| 91国内免费在线视频| 国产免费av在线| 欧美另类久久久品| 久久久久久久久艹| 91毛片在线观看| 91制片厂毛片| 欧美精选在线| 久久天天狠狠| 欧美三级电影网址| 欧美激情综合色综合啪啪五月| 天堂在线视频网站| 欧美揉bbbbb揉bbbbb| 久久久久黄色片| 久久久久国色av免费看影院| jizz欧美性11| 亚洲精品麻豆| 亚洲一区高清| 欧美尿孔扩张虐视频| 国产精品一区二区久久| 欧美xxxx少妇| 这里只有精品久久| 亚洲国产精品一| 在线亚洲高清视频| 久久久久久av无码免费网站| 国产视频911| 五月天激情小说| 久久国产免费看| 精品视频免费在线播放| 91影院成人| 欧美三日本三级少妇三99| 久久综合偷偷噜噜噜色| 爱情岛论坛亚洲首页入口章节| 怡红院红怡院欧美aⅴ怡春院| 亚洲第一视频网| 中文字幕777| 午夜影视日本亚洲欧洲精品| 亚洲一二三四视频| caoporn国产一区二区| 免费精品99久久国产综合精品应用| 国产一级淫片免费| 成人午夜视频在线| 欧美特级aaa| 亚洲作爱视频| 亚洲五码在线观看视频| 欧美色图激情小说| 久久精品第九区免费观看| 国产精品一区三区在线观看| 日韩免费观看网站| 电影在线观看一区| 欧美日韩高清区| 国产精品扒开做爽爽爽的视频| 亚洲欧洲日产国产网站| 日日夜夜精品免费| 日韩精品一区在线观看| 一级爱爱免费视频| 欧美性感一类影片在线播放| 日本在线播放视频| 亚洲成人福利片| 久久久久国产精品夜夜夜夜夜| 最新日韩av在线| 美女网站视频色| 欧美国产日韩a欧美在线观看| 日韩网站在线播放| 99久久综合色| 国产高清成人久久| 高潮精品一区videoshd| 日韩欧美中文在线视频| 韩国精品免费视频| 网站在线你懂的| 蜜臀av亚洲一区中文字幕| av视屏在线播放| 巨乳诱惑日韩免费av| av免费在线播放网站| 欧美一级视频| 黑鬼大战白妞高潮喷白浆| 久久精品人人| 亚洲性生活网站| 欧美aaaaa成人免费观看视频| 午夜欧美福利视频| 免费高清视频精品| 婷婷激情5月天| 国产成人av一区二区| xfplay5566色资源网站| www.欧美精品一二区| www.超碰97| 久久色成人在线| 日韩视频在线观看免费视频| 亚洲国产激情av| 久久嫩草捆绑紧缚| 亚洲综合网站在线观看| 国产精品第九页| 欧美午夜视频在线观看| 午夜精品一区二| 欧美区一区二区三区| a天堂中文在线观看| 欧美tickling挠脚心丨vk| 日本精品久久久久| 亚洲欧美另类人妖| 五月天婷婷在线视频| 欧美巨大黑人极品精男| 国产福利电影在线播放| 日本欧美一级片| 91精品国产自产观看在线| 丁香五月网久久综合| 色婷婷av一区二区三区丝袜美腿| 日本午夜一区二区三区| 亚洲a一区二区三区| www.av毛片| 日产国产欧美视频一区精品| 香蕉视频xxxx| 久久久久久免费网| 中国一级片在线观看| 亚洲va国产va欧美va观看| 无码人妻aⅴ一区二区三区有奶水| 欧美日韩日日夜夜| 成人爽a毛片一区二区| 亚洲天堂av在线播放| 99热国产在线| 日韩av免费网站| 欧美1区2区3| 亚洲精品9999| 亚洲激情社区| 五月天视频在线观看| 99精品视频在线观看免费| 亚洲国产精品一区二区久久hs| 亚洲午夜国产一区99re久久| 超碰在线免费97| 精品福利av导航| 欧美日韩在线看片| 欧美在线视频免费| 亚洲91网站| 色噜噜狠狠色综合网| 亚洲人妖在线| 波多野结衣在线免费观看| 久久久久久久久伊人| 免费日韩在线视频| 欧美性一二三区| 亚洲欧美日韩动漫| 麻豆国产va免费精品高清在线| 在线观看的黄色| 成人看片在线| 国产精品成人a在线观看| 日本www在线播放| 国产成人综合网站| 网站永久看片免费| 一本一道波多野结衣一区二区| 男人的天堂a在线| 欧美成aaa人片免费看| 成人免费在线观看视频| 免费看污久久久| 亚洲精选久久| 扒开伸进免费视频| 亚洲激情网站免费观看| 一卡二卡在线观看| 一区二区三欧美| av综合电影网站| 精品欧美国产一区二区三区不卡| 欧美色综合网| 能看毛片的网站| 亚洲精品久久久蜜桃| 国产精品热久久| 按摩亚洲人久久| 看片一区二区| 亚洲电影网站| 日本成人超碰在线观看| 久久久久久久久久久久久久久| 丁香五六月婷婷久久激情| 男人天堂av网| 992tv成人免费影院| 成人av地址| 久久av综合网| 成人av电影在线| 日本一区二区不卡在线| 精品国产伦一区二区三区免费| 日韩伦理av| 国产传媒一区| 99国产精品久久久久久久成人热| 久久国产劲爆∧v内射| 午夜久久久久久久久久一区二区| 黄色美女一级片| 91av视频在线播放| 天海翼亚洲一区二区三区| 国产主播在线看| 国产婷婷色一区二区三区在线| 久久久久久久久黄色| 亚洲午夜av久久乱码| 成人国产激情在线| 四虎永久免费网站| 懂色av中文字幕一区二区三区| 国语对白一区二区| 日韩精品在线视频观看| 经典三级一区二区| 在线观看日韩片| 国产黑丝在线一区二区三区| 亚洲一区二区91| 一区二区三区视频在线| 成人在线精品| 国产午夜福利100集发布| 国产欧美日韩在线| 国产sm主人调教女m视频| 久久久久国产精品免费网站| 亚洲人和日本人hd| 粉色视频免费看| 亚洲国产精品久久一线不卡| 青青草手机在线| 91精品久久久久久久久| 国产尤物精品| 国产一二三四五区| 欧美人妇做爰xxxⅹ性高电影 | 91亚洲精品国偷拍自产在线观看| 久久精品夜夜夜夜夜久久| 9国产精品午夜| 免费日韩中文字幕| 亚洲色图丝袜美腿| 天堂av一区二区三区| 国产精品久久久久久久天堂| 欧美体内she精视频在线观看| 人妻丰满熟妇av无码久久洗澡| 欧美日韩免费在线视频| 日本不卡影院| 日韩午夜视频在线观看| 成人一区二区三区中文字幕| 欧美男人亚洲天堂| 欧美成年人在线观看| 一区二区三区日本久久久| 超碰中文字幕在线观看| 色综合欧美在线| 国内高清免费在线视频| 一区不卡字幕| 91色婷婷久久久久合中文| a天堂视频在线|