locust性能测试脚本模板

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import time from locust import HttpLocust, TaskSet, task, seq_task class BlogDemo(TaskSet): def get_parameters(self):
# 定义获取参数
pass def regx(self):
# 定义正则表达式
pass @seq_task(2) # 第二个执行
@task(1)
def open_blog(self):
# 定义requests的请求头和url
url = "/111testing"
header = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36"} r = self.client.get(url, headers=header, name="进入我的博客")
print(r.status_code)
assert r.status_code == 200 @seq_task(1) # 第一个执行
@task(1)
# @task(1) 和 @task(2) 运行的请求数量是1:2
def open_blog_firstPage(self):
url = "/"
header = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36"} self.client.get(url, headers=header, name="进入博客园首页") class websitUser(HttpLocust):
task_set = BlogDemo
# 等待的区域时间不写的话,默认是1秒
min_wait = 3000 # 单位毫秒
max_wait = 6000 # 单位毫秒
host = "https://www.cnblogs.com" if __name__ == "__main__":
import os # 如果上面写了host,那么os.system这里就不用再写host了
os.system("locust -f demo.py") # 如果上面没有写host,那么os.system这里就需要写host
# os.system("locust -f demo.py --host=https://www.cnblogs.com") # 本机为主测试机时运行下面命令,单独的主测试机运行起来也没有用(无法跑并发请求的),必须结合子测试机使用
# os.system("locust -f demo.py --master") # 本机为子测试机时运行下面命令,运行子测试机的前提是必须已经运行了主测试机
# os.system("locust -f demo.py --slave") # 本机为子测试机时,且主测试机在另外一台机器时运行下面命令
# os.system("locust -f demo.py --slave --master-host=192.168.xx.xxx") # 一般主测试机多放在windows系统运行,子测试机多放在Linux系统运行,因为windows运行locust性能很差
# 运行一次请求机型调试:locust -f demo.py --no_web -c 1 -n 1

locust集合点设置

有时测试需要让所有并发用户完成初始化后再进行压力测试,这就需要类似于LoadRunner中的集合点的概念,由于框架本身没有直接封装,可借助python的gevent库来实现

locust性能测试脚本模板的更多相关文章

  1. Python locust性能测试框架模板

    locust框架模板 from locust import HttpLocust, TaskSet, task import Queue class UserBehavior(TaskSet): de ...

  2. Locust性能测试1 脚本编写与运行

    按照官网的quickstart编写脚本并运行 1  编写脚本 2  locust -f  filepath 启动locust 3 浏览器打开localhost:8089,设置并发用户数和每秒启动用户数 ...

  3. Python Locust性能测试框架实践

    [本文出自天外归云的博客园] Locust的介绍 Locust是一个python的性能测试工具,你可以通过写python脚本的方式来对web接口进行负载测试. Locust的安装 首先你要安装pyth ...

  4. Locust性能测试

    https://www.cnblogs.com/yoyoketang/p/9638151.html https://www.cnblogs.com/yoyoketang/p/9642242.html ...

  5. Locust性能测试4-参数关联

    前言 前面[Locust性能测试2-先登录场景案例]讲了登录的案例,这种是直接传账号和密码就能登录了,有些登录的网站会复杂一点, 需要先从页面上动态获取参数,作为登录接口的请求参数,如[学信网:htt ...

  6. Locust 性能测试工具安装使用说明

    1. 介绍     它是一个开源性能测试工具.使用 Python 代码来定义用户行为.用它可以模拟百万计的并发用户访问你的系统. 性能工具对比 LoadRunner 是非常有名的商业性能测试工具,功能 ...

  7. Locust性能测试_参数关联

    前言 前面[Locust性能测试2-先登录场景案例]讲了登录的案例,这种是直接传账号和密码就能登录了,有些登录的网站会复杂一点, 需要先从页面上动态获取参数,作为登录接口的请求参数,如[学信网:htt ...

  8. Locust性能测试_先登录场景案例

    前言 有很多网站不登录的话,是无法访问到里面的页面的,这就需要先登录了实现场景:先登录(只登录一次),然后访问页面->我的地盘页->产品页->项目页 官方案例 下面是一个简单的loc ...

  9. Locust性能测试_百度案例

    一.安装: 1.Locust在PyPI上可用,可以通过pip或easy_install安装:pip install locustio                2.查看Locust可用选项:loc ...

随机推荐

  1. Android笔记(六十四) android中的动画——补间动画(tweened animation)

    补间动画就是只需要定义动画开始和结束的位置,动画中间的变化由系统去补齐. 补间动画由一下四种方式: 1.AplhaAnimation——透明度动画效果 2.ScaleAnimation ——缩放动画效 ...

  2. 编写订单支付api中遇到的问题

    首先我是按照已经有的已经有的支付api去编写订单支付api,但是由于两者是有区别的,所以类似去搬用难免会出问题,首先我是套用已经写好的model,然后写相应的serializer,实现序列化之后就开始 ...

  3. 设置Django生产环境系统重启后的自动启动项

    前面,作者已经介绍了把Django部署到生产环境中的主要方法,现在我们来看一下如何设置项目开机启动. 在把Django项目部署到生产环境中时,我们前面使用安装包和源码安装了Nginx.uwsgi.re ...

  4. 在DEV c++ 中如何设置默认的代码模板

    /*菜单,工具=>编辑器选项(弹出对话框)=>代码(属性页)=>缺省源(属性页),写入一些代码确定即可(勾选“向项目初始源文件插入代码”).版本是5.11,中文版 */ #inclu ...

  5. 如何使用Arduino UNO开发板编程ATtiny85

    最近在Youtube上看了一个GreatScott制作的有关如何使用Attiny85的精彩教程,之后我购买了一片Attiny85 IC.但是,我花了很长时间尝试在它上面运行一个简单的LED闪烁的代码. ...

  6. CentOS7怎样安装Tomcat8.5.38

    cd /usr/local进入/usr/local目录 mkdir tomcat创建tomcat目录 cd tomcat进入tomcat目录 wget https://mirrors.tuna.tsi ...

  7. Spring -08 -自动注入 -byName/byType/constructor -全局使用default-autowire=” byName"

    1.在Spring 配置文件中对象名和ref=”id”id 名相同使用自动注入,可以不配置<property/>2.两种配置办法 2.1在<bean>中通过 autowire= ...

  8. P1801 黑匣子[堆]

    题目描述 Black Box是一种原始的数据库.它可以储存一个整数数组,还有一个特别的变量i.最开始的时候Black Box是空的.而i等于0.这个Black Box要处理一串命令. 命令只有两种: ...

  9. *JavaScript标准参考教程 - 阮一峰

    参考 页向对象编程的模式(继承&模块化)

  10. .net框架 - File类与FileInfo类异同

    System.IO命名空间中提供的文件操作类有File和FileInfo,这两个类的功能基本相同,只是File是静态类,其中所有方法都是静态的,可以通过类名直接调用,不需要实例化.而FileInfo是 ...