300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Locust使用手册--开始使用Locust

Locust使用手册--开始使用Locust

时间:2022-09-16 09:42:19

相关推荐

Locust使用手册--开始使用Locust

文章目录

开始Locust的web界面直接使用命令行 / headless更多选项下一步

开始

一个Locust测试用例本质上就是一个python程序。这使得它非常灵活,特别适合实现复杂的用户流。但它也可以做简单的测试,让我们从这个程序开始:

from locust import HttpUser, taskclass HelloWorldUser(HttpUser):@taskdef hello_world(self):self.client.get("/hello")self.client.get("/world")

上述代码定义了该用户一次又一次的进行/hello和/world的HTTP请求。有关完整的解释和更实际的例子参考locust脚本编写。

将上述代码保存在当前目录下的locustfile.py中,并在当前目录下运行locust指令:

$locust[-11-23 16:35:23,401] .../INFO/locust.main: Starting web interface at http://0.0.0.0:8089 (accepting connections from all network interfaces)[-11-23 16:35:23,403] .../INFO/locust.main: Starting Locust 2.13.0

Locust的web界面

一旦启动了Locust,打开一个浏览器窗口输入http://localhost:8089。你将会看见下图的界面:

将测试指向你自己的web服务器并进行测试!

下面的屏幕截图显示了使用40个并发用户运行该测试时的情况,ramp-up rate为0.5用户/秒,即Spawn Rate的值为20。

在【Charts】选项卡中,可以看到每秒请求数(RPS)等信息:

响应时间(毫秒):

用户数量:

批注

解释性能测试结果非常复杂(并且大部分超出了本手册的范围),但如果你的图形结果开始看起来像这样,最可能的原因是你的目标服务/系统无法处理您正在处理的负载(它过载或“饱和”)。

最明显的迹象是,当我们达到大约9个用户时,响应时间开始快速增长,以至于每秒请求的数量停止增长,尽管仍在增加新用户。

如果需要一些关于如何开始挖掘服务器端问题的指导,或者你在生成足够的负载以使系统饱和方面遇到困难,请查看Locust常见问题解答。

直接使用命令行 / headless

Locust web UI界面的使用是可选项。你也可以在命令行上提供加载参数,并以文本形式获取结果报告结果:

$locust --headless --users 10 --spawn-rate 1 -H http://your-[-11-23 16:41:10,947] .../INFO/locust.main: No run time limit set, use CTRL+C to interrupt.[-11-23 16:41:10,947] .../INFO/locust.main: Starting Locust 2.13.0[-11-23 16:41:10,949] .../INFO/locust.runners: Ramping to 10 users using a 1.00 spawn rateName # reqs# fails |AvgMinMax Median | req/s failures/s----------------------------------------------------------------------------------------------GET /hello 10(0.00%) |115115115115 | 0.00 0.00GET /world 10(0.00%) |119119119119 | 0.00 0.00----------------------------------------------------------------------------------------------Aggregated 20(0.00%) |117115119117 | 0.00 0.00[-11-23 16:44:42,484] .../INFO/locust.runners: All users spawned: {"HelloWorldUser": 10} (10 total users)

参考无Web UI运行章节获取更多详情。

更多选项

要在多个Python进程或机器上运行Locust,可以使用–master命令行参数启动一个Locust主进程,然后使用–worker命令行参数来启动任意数量的Locust工作进程。有关详细信息,请参阅分布式负载生成。

要查看所有可用选项,请输入:locust --help或查看Configuration章节。

下一步

现在,让我们更深入地了解一下locustfiles以及它们可以做什么:编写locustfile。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。