`

性能测试工具Locust

阅读更多

         An open source load testing tool.

一个开源性能测试工具。

define user behaviour with python code, and swarm your system with millions of simultaneous users.

使用Python代码来定义用户行为。用它可以模拟百万计的并发用户访问你的系统。

如果你常关注我的博客,大概会注意到我有三、四年没有写过关于性能测试的文章了,其实,今年也没更新几篇像样的博客,反而是我最忙的一年,原因是在写一本关于接口自动化的书。

回到主题,为何突然关注性能测试工具?其实,我只是单纯对Locust工具本身感兴趣而已。1、它与目前主流的LoadRunner和Jmeter玩法都不一样。2、它完全基于Python开发,用Python来编写用户行为。

嗯,如果想用好它的话,你必须对Web开发有一定的认识。而且还要熟悉Python开发。

官方网站:http://locust.io/

Locust安装                                                         

1、安装Python:

官方:https://www.python.org/

安装Python2 或Python3

2、安装Locuse

2.1, 通过pip命令安装 /> pip install locustio

2.2, 通过GitHub上克隆项目安装(Python3推荐):https://github.com/locustio/locust

3、安装 pyzmq

If you intend to run Locust distributed across multiple processes/machines, we recommend you to also install pyzmq.

如果你打算运行Locust 分布在多个进程/机器,我们建议你也安装pyzmq.

通过pip命令安装。 /> pip install pyzmq

4、安装成功,CMD敲入命令验证。 /> locust –help

编写简单的性能测试脚本                                         

创建load_test.py文件,通过Python编写性能测试脚本。

创建UserBehavior()类继承TaskSet类,为用户行为。

创建baidu() 方法表示一个行为,访问百度首页。用@task() 装饰该方法为一个任务。1表示一个Locust实例被挑选执行的权重,数值越大,执行频率越高。在当前UserBehavior()行为下只有一个baidu()任务,所以,这里的权重设置为几,并无影响。

WebsiteUser()类用于设置性能测试。

task_set :指向一个定义了的用户行为类。

min_wait :用户执行任务之间等待时间的下界,单位:毫秒。

max_wait :用户执行任务之间等待时间的上界,单位:毫秒。

运行性能测试                                                            

切换到性能测试脚本所在的目录,启动性能测试:

——————————————————————

…/> locust -f load_test.py –host=https://www.baidu.com

[2016-11-19 22:38:16,967] fnngj-PC/INFO/locust.main: Starting web monitor at *:8089

[2016-11-19 22:38:16,967] fnngj-PC/INFO/locust.main: Starting Locust 0.7.5

—————————————————————–

load_test.py 为测试脚本,https://www.baidu.com 为测试的网站。

打开浏览器访问:http://127.0.0.1:8089

Number of users to simulate 设置模拟用户数

Hatch rate (users spawned/second)  孵化率?不知道怎么翻译,每秒产生(启动)的用户数。

点击Start swarming 开始运行性能测试。

如果引起了你的兴趣,剩下的你自个玩吧!难点在性能测试脚本的编写上。

参考文档:http://docs.locust.io/en/latest/quickstart.html

分享到:
评论

相关推荐

    Httprunner_Locust性能测试

    1.安装性能测试工具Locust 1.1查看是否安装,执行命令 1.2安装locust  2.运行性能测试 2.1第一次尝试 2.2排查问题的N次尝试,直至成功 3.多进程运行模式 1.安装性能测试工具Locust 1.1查看是否安装,执行命令  ...

    Python性能测试工具Locust安装及使用

    一个开源性能测试工具。 define user behaviour with python code, and swarm your system with millions of simultaneous users. 使用Python代码来定义用户行为。用它可以模拟百万计的并发用户访问你的系统。 官方...

    Python 3.6 性能测试框架Locust安装及使用方法(详解)

    Python3.6 性能测试框架Locust的搭建与使用 基础 python版本:python3.6 开发工具:pycharm Locust的安装与配置 点击“File”→“setting” 点击“setting”,进入设置窗口,选择“Project Interpreter” 点击...

    pylot 性能测试工具

    Pylot是一款开源的测试web service性能和扩展性的工具,它运行HTTP负载测试,这对容量计划,确定基准点,分析以及系统调优都很有用处。Pylot产生并发负载(HTTPRequests),检验服务器响应,以及产生带有metrics的...

    【LocustPlus序】漫谈服务端性能测试

    并且,最近使用的性能测试工具Locust感觉挺不错的,只是其功能比较单薄,特别是在性能指标监控和测试报告图表方面比较缺失,因此也打算在Locust的基础上做二次开发,打造一款自己用得顺手的性能测试工具,暂且将其...

    Locust入门以及实战讲解(目前locust的相关资料还是比较少的)

    我猜在性能压测的工具选择上你一定和我一样还在使用LoadRunner或者是Jmeter吧,那么今天就来学点不一样的,该文档主要介绍了Locust从入门(简单原理)到脚本编写以及压测场景设置,内容包含性能相关知识点、Locust...

    Locust性能测试实践

    本培训课程全面讲解了Locust作为性能测试的一款工具的方方面面。讲解每个知识点时都有设计相关的案例进行实战。 此外,分布式测试,Docker技术运用到Locust测试,以及定制化客户端,是本门课程的亮点。

    接口自动化+性能测试实例

    目录autoInterface使用pytest+locust做了一个简单接口自动化+性能测试。 其中性能测试主目录为performaneTest 环境搭建与启动 安装django:pip install Django 启动服务: subprocess.call("python manage.py ...

    当你想做性能测试的时候应该如何选择一款顺手的工具那?

     今天,笔者将根据自己使用经验,针对jmeter、locust、wrk和loadrunner常用的性能测试工具进行简单介绍和对比。首先,附上网友总结的四者基本对比图: jmeter、locust、wrk、loadrunner对比图 ...

    蝗虫:用Python编写的可扩展用户负载测试工具

    Locust是易于使用,可编写脚本且可扩展的性能测试工具。 您可以使用常规Python代码定义用户的行为,而不是使用笨拙的UI或特定于域的语言。 这使Locust可以无限扩展,并且对开发人员非常友好。 产品特点 用普通的...

    Python-Taffy是基于nosetests的自动化测试框架

    Taffy主要用来测试后台服务(包括且不限于Http, Dubbo/hessian, Webservice, Socket等类型接口),也可集成Selenium, Appium进行WEB或APP的自动化测试,或集成locust进行性能测试。

    taurus:通过自动化友好的框架进行连续测试

    通过自动化友好的便捷包装器隐藏了性能和功能测试的复杂性。 Taurus依靠JMeter,Gatling,Locust.io,Grinder和Selenium WebDriver作为其基础工具。 在Apache 2.0许可下免费和开源。 安装或升级 只需使用PyPi安装它...

    HAR2

    它在生产模式下正确捆绑了React,并优化了构建以获得最佳性能。 生成被最小化,并且文件名包括哈希值。 您的应用已准备好进行部署! 有关更多信息,请参见关于的部分。 npm run eject 注意:这是单向操作。 ...

Global site tag (gtag.js) - Google Analytics