当前位置:网站首页>Locust performance test - environment construction and use
Locust performance test - environment construction and use
2022-07-04 22:31:00 【Peng Yuyan in the testing industry】
1. What is? Locust?
Locust Is an easy to use , Scriptable and extensible performance testing tool . You can use the general Python Code defines user behavior , This makes Locust It can be expanded infinitely , And very friendly to developers .
2. features
Distributed and scalable - Support hundreds of thousands of users
Locust Make it easy to run load tests on multiple computers . It's event based ( Use gevent), This allows a single process to handle thousands of concurrent users . Although there may be other tools that can perform more requests per second on a given hardware , But every one of them Locust The user's low overhead makes it ideal for testing high concurrency workloads .
be based on Web Of UI
Locust Have user-friendly Web Interface , It can display the test progress in real time . You can even change the load while the test runs . It can also be in the absence of UI Operation in case of , So that it can be easily used for CI / CD test .
Can test any system
Even if Locust Main content and website / Services are used together , It can also be used to test almost any system or protocol . just Write a client for what you want to test , Or browse some clients created by the community .
3. Environmental installation
Official documents
https://docs.locust.io/en/1.4.4/what-is-locust.html
install Python 3.6 Or later .
Use pip install
Locust.pip install locust
Verify the installation and display locust Version number
pip show locust
(venv) E:\workspace\LocustConcurrent>pip show locust
Name: locust
Version: 1.4.4
Summary: Developer friendly load testing framework
Home-page: https://locust.io/
4. Quick start
stay Locust in , You can use Python Code defines user behavior . then , You can use the locust Command and ( Optional ) Its Web The interface generates and simulates a large number of these users as it collects request statistics .
locust_cnblogs.py
''''
Create by dell on 2021/4/13
Author :wencheng
describe :
'''
from locust import HttpUser, task, between
class QuickstartUser(HttpUser):
wait_time = between(1, 2.5)
@task
def bky_deom(self):
self.client.get("/")
@task(3)
def bky_demo2(self):
self.client.get("/wen-cheng")
if __name__ == '__main__':
import os
os.system('locust -f locust_cnblogs.py -H https://www.cnblogs.com')
5. Startup and operation locust
open locust Of web Interface , Browser access :http://127.0.0.1:8089
Set the number of virtual users 20, Start every second 5 Users , Click on Start swarming Began to run
locust Of web Interface analysis :
Number of users to simulate It's the number of simulated users
Hatch rate (users spawned/second Represents the speed at which simulated users are generated
Start swarming Start testing
6. Analyze test results
Type: Request type ;
Name: Request path ;
Requests: Number of current requests ;
Fails: Number of current request failures ;
Median: In the middle , Unit millisecond , Generally, the server response time is lower than this value , The other half is higher than that ;
Average: Average response time for all requests , millisecond ;
Min: Minimum server response time for requests , millisecond ;
Max: Maximum server response time for a request , millisecond ;
Content Size: The size of a single request , Unit byte ;
Reqs/sec: Number of requests per second .
Interface chart display
throughput / Number of response transactions per second (rps) Real time statistics Mean response time / Real time statistics of average transactions Number of virtual users running
Derived data
The above is the whole content of this article , I hope the content of this article has a certain reference value for your study or work , If you have any questions, you can leave a message , Thank you for your support .
Learning resource sharing
Finally, thank everyone who reads my article carefully , Watching the rise and attention of fans all the way , Reciprocity is always necessary , Although it's not very valuable , If you can use it, you can take it
These materials , For thinking 【 Advanced automated testing 】 For our friends, it should be the most comprehensive and complete war preparation warehouse , This warehouse also accompanied me through the most difficult journey , I hope it can help you ! Everything should be done as soon as possible , Especially in the technology industry , We must improve our technical skills . I hope that's helpful …….
边栏推荐
- odps 中 对表进行了一次备份,为什么在元数据库查m_table 时,两张表的逻辑大小不一致,但数
- In Linux, I call odspcmd to query the database information. How to output silently is to only output values. Don't do this
- Mysql root 账号如何重置密码
- Convolutional neural network model -- lenet network structure and code implementation
- UML diagram memory skills
- How to reset the password of MySQL root account
- Ascendex launched Walken (WLKN) - an excellent and leading "walk to earn" game
- Radio and television Wuzhou signed a cooperation agreement with Huawei to jointly promote the sustainable development of shengteng AI industry
- # 2156. Find the substring of the given hash value - post order traversal
- 国产数据库乱象
猜你喜欢
PMO:比较25种分子优化方法的样本效率
并发优化总结
LOGO特訓營 第三節 首字母創意手法
Visual task scheduling & drag and drop | scalph data integration based on Apache seatunnel
Tiktok actual combat ~ the number of comments is updated synchronously
常用的开源无代码测试工具
TLA+ 入门教程(1):形式化方法简介
Deveco device tool 3.0 release brings five capability upgrades to make intelligent device development more efficient
Zhiyang innovation signed a cooperation agreement with Huawei to jointly promote the sustainable development of shengteng AI industry
Redis sentinel simply looks at the trade-offs between distributed high availability and consistency
随机推荐
Tiktok actual combat ~ the number of comments is updated synchronously
大厂的广告系统升级,怎能少了大模型的身影
繁华落尽、物是人非:个人站长该何去何从
好用app推荐:扫描二维码、扫描条形码并查看历史
服务线上治理
测试必会:BUG的分类及推进解决
Solana链上应用Crema因黑客攻击停运
HUAWEI nova 10系列发布 华为应用市场筑牢应用安全防火墙
LOGO特训营 第四节 字体设计的重要性
面试必备 LeetCode 链表算法题汇总,全程干货!
力扣2_1480. 一维数组的动态和
关于栈区、堆区、全局区、文字常量区、程序代码区
Force buckle_ Palindrome number
嵌入式开发:技巧和窍门——提高嵌入式软件代码质量的7个技巧
Interview essential leetcode linked list algorithm question summary, whole process dry goods!
A large number of virtual anchors in station B were collectively forced to refund: revenue evaporated, but they still owe station B; Jobs was posthumously awarded the U.S. presidential medal of freedo
常用的开源无代码测试工具
玩转gRPC—深入概念与原理
可视化任务编排&拖拉拽 | Scaleph 基于 Apache SeaTunnel的数据集成
Force buckle 3_ 383. Ransom letter