当前位置:网站首页>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 installLocust.pip install locust
Verify the installation and display locust Version numberpip show locust(venv) E:\workspace\LocustConcurrent>pip show locustName: locustVersion: 1.4.4Summary: Developer friendly load testing frameworkHome-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/13Author :wenchengdescribe :'''from locust import HttpUser, task, betweenclass QuickstartUser(HttpUser):wait_time = between(1, 2.5)@taskdef bky_deom(self):self.client.get("/")@task(3)def bky_demo2(self):self.client.get("/wen-cheng")if __name__ == '__main__':import osos.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 …….

边栏推荐
- 湘江鲲鹏加入昇腾万里伙伴计划,与华为续写合作新篇章
- Visual task scheduling & drag and drop | scalph data integration based on Apache seatunnel
- sqlserver对数据进行加密、解密
- Shell script implements application service log warehousing MySQL
- The proofreading activity of data science on the command line second edition was restarted
- Force buckle_ Palindrome number
- Postgresqlql advanced skills pivot table
- Alibaba launched a new brand "Lingyang" and is committed to becoming a "digital leader"
- 删库不必跑路!详解 MySQL 数据恢复
- Locust性能测试 —— 环境搭建及使用
猜你喜欢

玩转gRPC—深入概念与原理

KDD2022 | 什么特征进行交互才是有效的?

Tiktok actual combat ~ the number of comments is updated synchronously

Introduction and application of bigfilter global transaction anti duplication component

达梦数据凭什么被称为国产数据库“第一股”?

LOGO special training camp section I identification logo and Logo Design Ideas

i. Mx6ull driver development | 24 - platform based driver model lights LED

Ascendex launched Walken (WLKN) - an excellent and leading "walk to earn" game

将QA引入软件开发生命周期是工程师要遵循的最佳实践

Energy momentum: how to achieve carbon neutralization in the power industry?
随机推荐
LOGO special training camp section I identification logo and Logo Design Ideas
LOGO特训营 第四节 字体设计的重要性
Play with grpc - go deep into concepts and principles
Sqlserver encrypts and decrypts data
现在mysql cdc2.1版本在解析值为0000-00-00 00:00:00的datetime类
面试必备 LeetCode 链表算法题汇总,全程干货!
抖音实战~评论数量同步更新
Nat. Commun.| 机器学习对可突变的治疗性抗体的亲和力和特异性进行共同优化
UML diagram memory skills
PostgreSQL JOIN实践及原理
PostgreSQL服务端编程聚合和分组
Embedded development: skills and tricks -- seven skills to improve the quality of embedded software code
能源势动:电力行业的碳中和该如何实现?
LOGO特訓營 第三節 首字母創意手法
【C语言进阶篇】数组&&指针&&数组笔试题
How to reset the password of MySQL root account
# 2156. Find the substring of the given hash value - post order traversal
HUAWEI nova 10系列发布 华为应用市场筑牢应用安全防火墙
LOGO特训营 第五节 字体结构与设计常用技法
Domestic database chaos