软件发布

手机版,更便捷!

下载排行榜首页软件下载安卓下载资讯教程推荐专题装机必备
当前位置:电脑软件 > 网络软件 > 网络辅助 > LocustV1.4.4 正式版

Locust V1.4.4 正式版负载测试软件

101人评分

  • 软件大小:1.2MB
  • 更新时间:2021-02-26
  • 授权:免费软件
  • 软件类型:国外软件
  • 软件类别:国外软件
  • 语言:英文软件
  • 平台:Win7/Win8/Win10/WinALL
  • 平台检测:
立即下载 已有 次下载

Locust是一款专业的负载测试软件。性能测试就来使用您可以使用此软件来帮助用户测试Web程序性能,测试网站性能,支持HTTP请求测试,基于响应系统的负载测试或将该软件扩展到其他系统以进行测试。测试数据可以通过图表显示。测试人员可以方便地查看视觉负载测试结果。日志内容将在测试过程中显示,这便于以后查看日志以了解工作流程。该软件仍然非常通用。它支持Docker运行Locust,并支持不带WebU的Locust。支持通过更快的HTTP客户端提高Locust的性能,新版本修复了打破Web UI中图表工具提示的错误,对图表进行了多项改进,包括工具提示等,并添加了-html选项以保存HTML报告,如果需要,请下载该报告!

官方教程:

安装Python 3.6或更高版本。

使用pip安装蝗虫。

$ pip3安装蝗虫

验证安装并显示蝗虫版本号:

$蝗虫-V

如果一切正常,请继续快速上手。如果没有,请查看Wiki了解一些解决方案。

出血边缘版本如果需要某些尚未发布的功能或修补程序,请执行以下操作:

$ pip3 install -e git://github.com/locustio/locust.git@master#egg=locust

快速入门在Locust中,您可以使用Python代码定义用户行为。然后,您可以使用locust命令及其Web界面(可选),在收集请求统计信息时生成并模拟大量用户。

Locustfile.py示例

Locust

让我们分解一下

导入时间

从蝗虫中导入HttpUser,任务之间

蝗虫文件只是一个普通的Python模块,它可以从其他文件或包中导入代码。

类QuickstartUser(HttpUser):

在这里,我们为要模拟的用户定义了一个类。它继承了HttpUser的client属性,以便为每个用户提供一个属性,该属性是HttpSession的实例,可用于向要加载和测试的目标系统发出HTTP请求。当测试开始时,Locust将为其模拟的每个用户创建一个此类的实例,并且每个这些用户将

开始在其自己的绿色gevent线程中运行。

Wait_time =之间(1,2.5)

我们的类定义了一个wait_time,它将使模拟用户在执行每个任务后等待1到2.5秒(请参见下文)

Locust

用方法修饰的方法@task是Locust文件的核心。 Locust为每个正在运行的用户创建一个greenlet(微线程),并且greenlet将调用这些方法。

Locust

我们通过修改两种方法声明了两个任务@task,其中一种具有较高的权重(3)。当我们的QuickstartUser运行时,它将选择一个声明任务-在这种情况下,是hello_world或view_items-并执行它。任务是随机选择的,但是您可以赋予它们不同的权重。上面的配置将使蝗虫选择view_items的速度比hello_world容易三倍。任务完成后,用户将在其等待时间内(在这种情况下为1到2.5秒)进入睡眠状态。等待时间过后,它将选择一个新任务并继续重复执行。

请注意,只有@task选择带有修饰符的方法,因此您可以根据自己的喜好定义自己的内部帮助器方法。

Self.client.get(“ / hello”)

self.client属性使进行由Locust记录的HTTP调用成为可能

Locust

在此view_items任务中,我们使用可变查询参数加载10个不同的URL。为了不在蝗虫统计信息中获得10个单独的项目(因为统计信息按URL分组),我们使用name参数将所有这些请求分组在一个名为“ / item”的项目下。

Locust

另外,我们还声明了一个on_start方法。每个模拟用户将在启动时使用该名称调用该方法

开将上面的代码放入当前目录中名为locustfile.py的文件中,然后运行:

蝗虫

如果蝗虫文件位于其他位置,则可以使用-f

$蝗虫-f locust_files / my_locust_file.py

笔记

要查看所有可用选项,请输入:或检查配置蝗虫-帮助

Locust的Web界面使用上述命令行之一启动Locust后,应打开浏览器并将其指向http://127.0.0.1:8089。然后,您应该收到与以下内容类似的问候:

Locust

填写表格并尝试! (但是请注意,如果您没有更改蝗虫文件以匹配实际的目标系统,则在大多数情况下,您将收到错误响应)

Locust

Locust

更多选项要在多个Python进程或计算机上运行Locust,可以使用--master命令行参数启动Locust主进程,然后使用--worker命令行参数启动任意数量的Locust worker进程。

要不使用Web界面直接开始测试,请使用--headless。

您还可以通过环境变量或在配置文件中设置参数。

要在无头操作期间添加/删除用户,请按w或W(1,10)生成用户,然后按s或S停止(1,10)。

使用自定义客户端来测试其他系统Locust是使用HTTP作为主要目标构建的。但是,通过编写一个触发request_success和request_failure事件的自定义客户端,可以轻松扩展该客户端以对任何基于请求/响应的系统进行负载测试。

笔记

您使用的任何协议库都必须是gevent友好的(使用Python套接字模块或其他类似的标准库函数子进程),否则您的调用将阻塞整个Locust进程。

gevent无法通过猴子修补某些C库,但允许其他解决方案。例如,如果要使用psycopg2在PostgreSQL上执行性能测试,则可以使用psycogreen。

示例XML-RPC用户客户端这是User类XmlRpcUser的示例,该类提供XML-RPC客户端XmlRpcUser并跟踪所有发出的请求:

Locust

Locust

如果您之前已经编写过Locust测试,则将识别出名为ApiUser的类,该类是一个普通的User类,它声明了多个任务。但是,您可以从XmlRpcUser上方看到的ApiUser继承ApiUser。使用XmlRpcUser标记为抽象,这意味着Locust不会尝试从此类创建模拟用户(仅扩展此类的类)。在属性下提供XmlRpcClient的实例。抽象= TrueXmlRpcUserclient

XmlRpcClient是标准库周围的包装器xmlrpc.client.ServerProxy。它基本上只是一个代理函数调用,但是重要的是增加触发器locust.event.Events.request_success和locust.event.Events.request_failure事件,这些事件将在Locust统计信息中记录有调用。

这是XML-RPC服务器的实现,可以用作上述代码的服务器:

Locust

使用事件钩子来扩展蝗虫

蝗虫机智

许事件挂钩,可用于以不同方式扩展蝗虫。

事件挂钩位于“环境”实例上的“ events”属性下。但是,由于在导入蝗虫文件时尚未创建Environment实例,因此也可以通过locust.events变量在蝗虫文件的模块级别访问事件对象。

这是如何设置事件侦听器的示例:

Locust

笔记

强烈建议您在侦听器中添加通配符关键字参数(上述代码中的** kw),以防止在以后的版本中添加新参数时代码损坏。

添加网络路由Locust使用Flask提供Web UI,因此很容易将Web端点添加到Web UI。通过监听init事件,我们可以检索对Flask应用程序实例的引用,并使用该引用来设置新的路由:

Locust

现在,您应该能够启动蝗虫并浏览到http://127.0.0.1:8089/added_page

扩展Web UI除了添加简单的Web路由外,您还可以使用Flask蓝图和模板来添加路由。您还可以扩展Web UI,以允许您在内置蝗虫统计信息旁边显示自定义数据。这是一种更高级的方法,因为它还涉及编写和包括要通过路由提供服务的HTML和Javascript文件,但是它可以大大增强Web UI的实用性和可定制性。

您可以在Locust源代码的examples目录中找到扩展Web UI的有效示例,该目录包含HTML和Javascript示例文件。

运行绿色背景因为Locust文件是“合理的代码”,所以没有什么可以阻止您生成自己的greenlet来与实际的负载/用户并行运行。

例如,您可以监视测试的失败率并在测试超过特定阈值时停止运行:

Locust

软件功能:

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

Locust

分布式和可扩展支持数十万用户

Locust使运行分布在多台计算机上的负载测试变得容易。它是基于事件的(使用gevent),它允许单个进程处理成千上万的并发用户。尽管可能还有其他工具可以在给定的硬件上每秒执行更多请求,但是每个Locust用户的低开销使其非常适合测试高并发工作负载。

Locust

基于Web的UI

Locust具有用户友好的Web界面,可以实时显示测试进度。您甚至可以在测试运行时更改负载。它也可以在没有UI的情况下运行,从而使CI / CD测试变得容易。

Locust

可以测试任何系统

即使Locust主要与网站/服务一起使用,它也可以用于测试几乎任何系统或协议。只需为要测试的内容编写客户端,或浏览社区创建的内容。

Locust

软件特色:

使用普通的Python编写用户测试计划

如果您希望用户循环,执行某些条件行为或执行某些计算,则只需使用Python提供的常规编程结构。蝗虫在每个用户内部运行其自己的greenlet(轻量级进程/协程)。这使您可以编写类似于普通(阻塞)Python代码的测试,而不必使用回调或其他某种机制。因为您的方案是“仅python”,所以您可以使用常规IDE并以常规代码的形式控制测试(与其他一些使用XML或二进制格式的工具相对)

名称和背景

蝗虫是由于对现有解决方案的不满而诞生的。没有现有的负载测试工具可以为动态网站生成实际负载。在动态网站上,大多数页面针对不同用户具有不同的内容。现有工具使用笨拙的接口或冗长的配置文件来声明测试。在蝗虫中,我们采取了不同的方法。代替配置格式或UI,您将获得一个python框架,该框架可让您使用Python代码定义用户行为。

蝗虫的名字来自蝗虫的种类,它们成群地出现。

Locust的先前版本使用了从自然界借来的术语(大量发布,孵化,攻击等),但是现在它采用了更多的行业标准命名。

上一篇:多六六查词 下一篇:PubNote

应用截图

  • Locust截图(1)
  • Locust截图(2)

相关专题

  • 手机夺宝app

    夺宝app是很多喜欢网购的朋友只需要花一元钱就能买到自己需要的产品的安卓应用,夺宝app主要吸引消费者的一点是你可能只需要花一元钱就能买到自己需要的产品,不过这需要一点运气。喜欢购物的朋友可以来看看, 但是如果你有明确的购买目标的话,还是直接到官方平台或者门店购买比较靠谱。 更多详细 >

人气软件

  • 抖音热门的表白整蛊工具评分:5 

    下载

    抖音热门的表白整蛊工具抖音热门的表白整蛊工具是一款好玩的表白整蛊软件,不过同意的按钮并不能按到,撩小姐姐专用。来自抖音上的非常火的视频,内附源码,可以自己修改制作出专属的整蛊文字。 大小:1.2MBMB  更新:06-19  类型:网络辅助  国产软件  简体中文

  • NetCatcher评分:5 

    下载

    NetCatcherNetCatcher专门用于监视电脑网络使用的网络传输监视程序,能够有效的保证你的电脑文件传输的安全。用户提供这款软件可以有效的保护电脑传输文件的安全性,避免传输文件被盗。 大小:103.7kbMB  更新:06-19  类型:网络辅助  国产软件  简体中文

  • mTrawl评分:5 

    下载

    mTrawlmTrawl是一个操作简便的网站死链接检测工具,它可以扫描您指定网站的所有链接,并从中找出存在的死链,包括丢失的图像、网页和HTML验证错误等,能让管理员及时发现网站的问题。软件帮助您验证网站链接,速度非常快,您... 大小:25.6MBMB  更新:06-19  类型:网络辅助  国产软件  简体中文

  • 旺推商务助手评分:5 

    下载

    旺推商务助手旺推商务助手 可以帮你将网站免费提交到百度,搜狗等浏览器,让你可以被各大引擎收录,节省你在做广告的成本! 大小:6.3MBMB  更新:06-19  类型:网络辅助  国产软件  简体中文

  • 世纪前线网络测速器评分:5 

    下载

    世纪前线网络测速器世纪前线网络测速器 可以帮助玩家测试加速游戏,如果你的游戏延迟太多的话可以借用这款软件来测速,非常好用。 大小:604.6kbMB  更新:06-20  类型:网络辅助  国产软件  简体中文

最新评论

软件分类

热门排行榜

回顶部 去下载