您现在的位置是:首页 > 软件下载 > 网络工具 > 上网辅助 >

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

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

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

宝哥软件园为您提供Locust,负载测试软件免费下载,Locust是一款专业的负载测试软件。

软件大小:1.2MB

软件类型:汉化软件

软件语言:简体中文

软件授权:自由软件

最后更新:2021-08-27 02:32:55

推荐指数

运行环境:Win7/Win8/Win10/WinALL

查看次数

蝗虫是一个专业的负载测试软件。您可以使用该软件帮助用户测试Web程序的性能,测试网站的性能,支持HTTP请求测试,基于响应系统的负载测试,或者将该软件扩展到其他系统进行测试。测试数据可以用图表显示。测试人员可以轻松查看可视化负载测试结果。日志内容将在测试期间显示,这使得以后查看日志以了解工作流变得容易。软件还是很一般的。它支持Docker运行蝗虫,支持无WebU的蝗虫。支持通过更快的HTTP客户端来提高蝗虫的性能。新版本修复了Web UI中破坏图表工具提示的错误,对包括工具提示在内的图表做了很多改进,增加了-HTML选项保存HTML报表。如有需要,请下载报告!

官方教程:

安装Python 3.6或更高版本。

用pip安装蝗虫。

$ pip3安装蝗虫

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

$蝗虫-五

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

出血边缘版本如果您需要一些未发布的功能或补丁,请执行以下操作:

$ pip 3 install-e git://github.com/locustio/蝗虫. @ master # egg=蝗虫

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

Locustfile.py示例

Locust

让我们把它分解

导入时间

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

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

类快速启动用户(HttpUser):

这里,我们为要模拟的用户定义一个类。它继承了HttpUser的客户端属性,从而为每个用户提供了一个属性,这个属性是HttpSession的一个实例,可以用来向目标系统发出HTTP请求进行加载和测试。当测试开始时,蝗虫将为它模拟的每个用户创建一个这个类的实例,每个用户将

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

等待时间=介于(1,2.5)之间

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

Locust

用方法修饰的方法@task是locate文件的核心。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属性使得可以进行由蝗虫记录的HTTP调用

Locust

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

Locust

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

将上述代码打开到当前目录下名为locustfile.py的文件中,然后运行:

蝗虫

如果蝗虫文件位于另一个位置,可以使用-f

$蝗虫-floust _ files/my _蝗虫_ file.py

笔记

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

蝗虫的Web界面应该打开浏览器,用上面的命令行之一启动蝗虫后指向http://127.0.0.133608089。然后,您应该会收到类似以下内容的问候:

Locust

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

Locust

Locust

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

使用- headless,而不是直接使用Web界面启动测试。

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

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

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

笔记

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

Gevent不能通过猴子修补一些c库,但允许其他解决方案。例如,如果您想使用psycopg2对PostgreSQL执行性能测试,可以使用psycogreen。

示例XML-RPC用户客户端这是用户类XmlRpcUser的一个示例,它提供XML-RPC客户端XmlRpcUser并跟踪所有请求:

Locust

Locust

如果您以前编写过一个蝗虫测试,您将识别一个名为ApiUser的类,它是一个声明多个任务的普通用户类。但是,您可以从上面的XmlRpcUser中继承ApiUser。用XmlRpcUser标记为抽象,这意味着蝗虫不会尝试从这个类创建模拟用户(只扩展这个类的类)。在属性下,提供XmlRpcClient的实例。抽象=TrueXmlRpcUserclient

XmlRpcClient是标准库xmlrpc.client.ServerProxy的包装器.它基本上只是一个代理函数调用,但是添加诸如locate之类的触发器很重要。事件。事件。请求成功并定位。事件。事件。request _ failure事件,它将在定位统计信息中记录该调用。

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

Locust

使用事件钩子来展开蝗虫

蝗虫般的智慧

徐事件的钩子,可以用不同的方式来扩大蝗虫。

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

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

Locust

笔记

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

添加网络路由蝗虫使用烧瓶来提供网络用户界面,因此很容易向网络用户界面添加网络端点。通过监听init事件,我们可以检索对Flask应用程序实例的引用,并使用它来设置新的路由:

Locust

现在,您应该能够启动蝗虫并浏览到http://127 . 0 . 0 . 1:8089/add _ page

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

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

运行绿色背景因为定位文件是“合理的代码”,没有什么可以阻止你生成自己的小程序,与实际的负载/用户并行运行。

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

Locust

软件功能:

蝗虫是一个易于使用,可脚本化和可扩展的性能测试工具。您可以使用常规Python代码来定义用户行为,而无需使用笨拙的用户界面或特定于领域的语言。这使得蝗虫具有无限的可扩展性,对开发人员非常友好。

Locust

面向数十万用户的分布式可扩展支持

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

Locust

基于网络的用户界面

蝗虫有一个用户友好的网络界面,可以实时显示测试进度。您甚至可以在测试运行时更改负载。它也可以在没有UI的情况下运行,这使得测试CI/CD变得很容易。

Locust

你可以测试任何系统

尽管蝗虫主要用于网站/服务,但它几乎可以用于测试任何系统或协议。只需为要测试的内容编写一个客户端,或者浏览社区创建的内容。

Locust

软件特色:

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

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

姓名和背景

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

蝗虫的名字来源于成群出现的蝗虫种类。

蝗虫的前一个版本使用了从自然界借来的术语(大量释放、孵化、攻击等)。),但现在采用了更多的行业标准名称。

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

Locust V1.4.4 正式版负载测试软件:
暂不提供下载

相关教程

猜你喜欢