locust 性能测试学习 第一天
不废话
1、安装python库
pip install locustio
pip install pyzmq
2、脚本 命名为locust_test.py
from locust import HttpLocust,TaskSet,task
import subprocess
import json
#This is the TaskSet class.
class UserBehavior(TaskSet):
#Execute before any task.
def on_start(self):
pass
#the @task takes an optional weight argument.
@task(1)
def list_header(self):
r = self.client.get("/homepage/list_header.html")
if json.loads((r.content))["result"] != 100:
r.failure("Got wrong response:"+r.content)
@task(2)
def list_goods(self):
r = self.client.get("/homepage/list_goods.html")
if json.loads((r.content))["result"] != 100:
r.failure("Got wrong response:"+r.content)
#This is one HttpLocust class.
class WebUserLocust(HttpLocust):
#Speicify the weight of the locust.
weight = 1
#The taskset class name is the value of the task_set.
task_set = UserBehavior
#Wait time between the execution of tasks.
min_wait = 5000
max_wait = 15000
#This is another HttpLocust class.
class MobileUserLocust(HttpLocust):
weight = 3
task_set = UserBehavior
min_wait = 3000
max_wait = 6000
#if __name__ == '__main__':
# subprocess.Popen('locust -f .\locust_test_1.py --host=http://api.g.caipiao.163.com', shell=True)
3、对Locust项目的启动,我们可以在命令行终端中执行以下命令:
这里的“-f”指定了要执行的python文件路径,“--host”指定了模拟用户请求接口的host名。执行该命令,Locust项目就启动了
接下来就可以在浏览器中访问我们的locust页面来完成负载测试了,如果不想通过浏览器来设置完成负载测试,纯粹命令行模式也是支持的,输入以下命令:
locust -f .\locust_test.py --host='http://api.g.caipiao.163.com' --no-web -c 1000 -r 10 -n 1000
接下来负载测试就会自动执行,按“ctrl+c”结束负载测试:
对于命令行中的参数的解释:--no-web是用来选择无浏览器模式,-c后面接的是模拟用户数,-r后面接的每秒模拟用户并发数,-n后面接的是模拟请求数。
对于命令行中的参数的解释:--no-web是用来选择无浏览器模式,-c后面接的是模拟用户数,-r后面接的每秒模拟用户并发数,-n后面接的是模拟请求数。
对于命令行中的参数的解释:--no-web是用来选择无浏览器模式,-c后面接的是模拟用户数,-r后面接的每秒模拟用户并发数,-n后面接的是模拟请求数。
在浏览器中输入“http://localhost:8089/”访问,会看到如下页面:

locust 性能测试学习 第一天的更多相关文章
- Locust性能测试学习总结
Locust学习总结分享 简介: Locust是一个用于可扩展的,分布式的,性能测试的,开源的,用Python编写框架/工具,它非常容易使用,也非常好学.它的主要思想就是模拟一群用户将访问你的网站.每 ...
- 性能测试学习第一天-----概念、环境、LR录制&参数化
1.性能测试的概念: 通过一定的手段,在多并发情况下,获取被测系统的各项性能指标, 验证被测系统在高并发下的处理能力.响应能力.稳定性等,能否满足预期.定位性能瓶颈,排查性能隐患,保障系统的质量,提升 ...
- Locust性能测试_先登录场景案例
前言 有很多网站不登录的话,是无法访问到里面的页面的,这就需要先登录了实现场景:先登录(只登录一次),然后访问页面->我的地盘页->产品页->项目页 官方案例 下面是一个简单的loc ...
- locust性能测试脚本模板
locust性能测试脚本模板 #!/usr/bin/env python # -*- coding: utf-8 -*- import time from locust import HttpLocu ...
- Locust性能测试工具核心技术@task和@events
Tasks和Events是Locust性能测试工具的核心技术,有了它们,Locust才能称得上是一个性能工具. Tasks 从上篇文章知道,locustfile里面必须要有一个类,继承User类,当性 ...
- Magento学习第一课——目录结构介绍
Magento学习第一课--目录结构介绍 一.Magento为何强大 Magento是在Zend框架基础上建立起来的,这点保证了代码的安全性及稳定性.选择Zend的原因有很多,但是最基本的是因为zen ...
- YII2学习第一天
YII2学习第一天,之前稍微看了看TP,感觉和自己的理念不是很符合,然后转学YII2了. 使用的文档是https://github.com/yiisoft/yii2/tree/master/docs/ ...
- Java学习第一天
Java学习第一天 对于网络管理员或者黑客必须知道的八个cmd命令 详情请参考:http://www.2cto.com/os/201608/533964.html nbtstat ...
- 性能测试学习之三—— PV->TPS转换模型&TPS波动模型
PV->TPS转换模型 由上一篇“性能测试学习之二 ——性能测试模型(PV计算模型)“ 得知 TPS = ( (80%*总PV)/(24*60*60*(T/24)))/服务器数量 转换需要注意: ...
随机推荐
- maven拓展——使用tomcat插件运行maven项目
首先,在pom.xml中配置插件: <build> <plugins> <plugin> <groupId>org.apache.tomcat.mave ...
- 20155322 2016-2017-2 《Java程序设计》第4周学习总结
20155322 2016-2017-2 <Java程序设计>第4周学习总结 教材学习内容总结 本周的学习内容为课本第六章与第七章: 第六章主要讲继承和多态.首先是我们为什么要学习继承和多 ...
- 20145226夏艺华 Exp6 信息搜集与漏洞扫描
20145226夏艺华 Exp6 信息搜集与漏洞扫描 基础问题回答 哪些组织负责DNS,IP的管理? · 全球根服务器均由美国政府授权的ICANN统一管理,负责全球的域名根服务器.DNS和IP地址管理 ...
- Windows Powershell统计代码行数
dir .\ -Recurse *.py | Get-Content | Measure-Object
- Scrapy爬取美女图片第四集 突破反爬虫(上)
本周又和大家见面了,首先说一下我最近正在做和将要做的一些事情.(我的新书<Python爬虫开发与项目实战>出版了,大家可以看一下样章) 技术方面的事情:本次端午假期没有休息,正在使用fl ...
- 初识JMM
目录 what is JMM? JMM变量存储结构 JMM三大特性 原子性 可见性 有序性 java 堆栈 静态存储 栈式存储 堆式存储 JVM是啥 参考<Inside JVM> what ...
- 译图智讯VIN码识别助力汽配商转型升级
汽配猫是上海佳驰经合能源科技有限公司自主开发的汽车配件B2B网上商城及服务平台,该平台依托互联网云技术.利用创新的商业模式及互联网思维,整合汽配产业链优秀资源,为汽车维修保养企业等产业链各方面提供汽配 ...
- perf + 火焰图用法 小结
要对新服务做性能测试,分析代码热点,初识perf,做下总结 perf + 火焰图用法 perf简介 Perf (Performance Event), Linux 系统原生提供的性能分析工具, 会返回 ...
- Vue学习计划基础笔记(四) - 事件处理
事件处理 目标: 熟练掌握事件监听的方式,熟悉事件处理方式以及各类事件修饰符 理解在html中监听事件的意义 监听事件(v-on) 类似普通的on,例如v-on:click或@click就相当于普通的 ...
- sqlserver-查阻塞
模拟阻塞: 打开两个窗口: 窗口一: BEGIN TRANSACTION--开始事务 --等待1分钟 WAITFOR DELAY '00:1'; 窗口二: 查询阻塞:(当前被阻塞的进程id,不 ...