zoukankan      html  css  js  c++  java
  • Locust学习笔记8——命令行参数详解

      引言

      前面在Locust学习笔记7——no-web模式运行脚本这篇文章中已经讲过非GUI模式运行脚本,也就是在windows系统下以命令的方式去运行脚本。而Linux系统也是使用no-web方式运行。所以,我们要了解哪些命令。

      命令行参数

      最简单的方式,输入cmd,再dos窗口下输入locust --help,查看所有的命令行参数

    locust --help
    usage: locust [-h] [-H HOST] [--web-host WEB_HOST] [-P PORT] [-f LOCUSTFILE]
                  [--csv CSVFILEBASE] [--csv-full-history] [--master] [--slave]
                  [--master-host MASTER_HOST] [--master-port MASTER_PORT]
                  [--master-bind-host MASTER_BIND_HOST]
                  [--master-bind-port MASTER_BIND_PORT]
                  [--heartbeat-liveness HEARTBEAT_LIVENESS]
                  [--heartbeat-interval HEARTBEAT_INTERVAL]
                  [--expect-slaves EXPECT_SLAVES] [--no-web] [-c NUM_CLIENTS]
                  [-r HATCH_RATE] [-t RUN_TIME] [--skip-log-setup] [--step-load]
                  [--step-clients STEP_CLIENTS] [--step-time STEP_TIME]
                  [--loglevel LOGLEVEL] [--logfile LOGFILE] [--print-stats]
                  [--only-summary] [--no-reset-stats] [--reset-stats] [-l]
                  [--show-task-ratio] [--show-task-ratio-json] [-V]
                  [--exit-code-on-error EXIT_CODE_ON_ERROR] [-s STOP_TIMEOUT]
                  [LocustClass [LocustClass ...]]
    
    Args that start with '--' (eg. -H) can also be set in a config file
    (~/.locust.conf or locust.conf). Config file syntax allows: key=value,
    flag=true, stuff=[a,b,c] (for details, see syntax at https://goo.gl/R74nmi).
    If an arg is specified in more than one place, then commandline values
    override config file values which override defaults.
    
    positional arguments:
      LocustClass
    
    optional arguments:
      -h, --help            show this help message and exit
      -H HOST, --host HOST  Host to load test in the following format:
                            http://10.21.32.33
      --web-host WEB_HOST   Host to bind the web interface to. Defaults to '' (all
                            interfaces)
      -P PORT, --port PORT, --web-port PORT
                            Port on which to run web host
      -f LOCUSTFILE, --locustfile LOCUSTFILE
                            Python module file to import, e.g. '../other.py'.
                            Default: locustfile
      --csv CSVFILEBASE, --csv-base-name CSVFILEBASE
                            Store current request stats to files in CSV format.
      --csv-full-history    Store each stats entry in CSV format to
                            _stats_history.csv file
      --master              Set locust to run in distributed mode with this
                            process as master
      --slave               Set locust to run in distributed mode with this
                            process as slave
      --master-host MASTER_HOST
                            Host or IP address of locust master for distributed
                            load testing. Only used when running with --slave.
                            Defaults to 127.0.0.1.
      --master-port MASTER_PORT
                            The port to connect to that is used by the locust
                            master for distributed load testing. Only used when
                            running with --slave. Defaults to 5557.
      --master-bind-host MASTER_BIND_HOST
                            Interfaces (hostname, ip) that locust master should
                            bind to. Only used when running with --master.
                            Defaults to * (all available interfaces).
      --master-bind-port MASTER_BIND_PORT
                            Port that locust master should bind to. Only used when
                            running with --master. Defaults to 5557.
      --heartbeat-liveness HEARTBEAT_LIVENESS
                            set number of seconds before failed heartbeat from
                            slave
      --heartbeat-interval HEARTBEAT_INTERVAL
                            set number of seconds delay between slave heartbeats
                            to master
      --expect-slaves EXPECT_SLAVES
                            How many slaves master should expect to connect before
                            starting the test (only when --no-web used).
      --no-web              Disable the web interface, and instead start running
                            the test immediately. Requires -c and -t to be
                            specified.
      -c NUM_CLIENTS, --clients NUM_CLIENTS
                            Number of concurrent Locust users. Only used together
                            with --no-web
      -r HATCH_RATE, --hatch-rate HATCH_RATE
                            The rate per second in which clients are spawned. Only
                            used together with --no-web
      -t RUN_TIME, --run-time RUN_TIME
                            Stop after the specified amount of time, e.g. (300s,
                            20m, 3h, 1h30m, etc.). Only used together with --no-
                            web
      --skip-log-setup      Disable Locust's logging setup. Instead, the
                            configuration is provided by the Locust test or Python
                            defaults.
      --step-load           Enable Step Load mode to monitor how performance
                            metrics varies when user load increases. Requires
                            --step-clients and --step-time to be specified.
      --step-clients STEP_CLIENTS
                            Client count to increase by step in Step Load mode.
                            Only used together with --step-load
      --step-time STEP_TIME
                            Step duration in Step Load mode, e.g. (300s, 20m, 3h,
                            1h30m, etc.). Only used together with --step-load
      --loglevel LOGLEVEL, -L LOGLEVEL
                            Choose between DEBUG/INFO/WARNING/ERROR/CRITICAL.
                            Default is INFO.
      --logfile LOGFILE     Path to log file. If not set, log will go to
                            stdout/stderr
      --print-stats         Print stats in the console
      --only-summary        Only print the summary stats
      --no-reset-stats      [DEPRECATED] Do not reset statistics once hatching has
                            been completed. This is now the default behavior. See
                            --reset-stats to disable
      --reset-stats         Reset statistics once hatching has been completed.
                            Should be set on both master and slaves when running
                            in distributed mode
      -l, --list            Show list of possible locust classes and exit
      --show-task-ratio     print table of the locust classes' task execution
                            ratio
      --show-task-ratio-json
                            print json data of the locust classes' task execution
                            ratio
      -V, --version         show program's version number and exit
      --exit-code-on-error EXIT_CODE_ON_ERROR
                            sets the exit code to post on error
      -s STOP_TIMEOUT, --stop-timeout STOP_TIMEOUT
                            Number of seconds to wait for a simulated user to
                            complete any executing task before exiting. Default is
                            to terminate immediately. This parameter only needs to
                            be specified for the master process when running
                            Locust distributed.
    

      你也可以在pycharm编辑器终端terminal输入:locust --help

      参数中文说明

    参数名称参数值参数说明
    -h, --help 不带参数 查看帮助信息
    -H HOST, –host=HOST HOST 指定被测试的主机,采用以格式:http://10.21.32.33
    –web-host=WEB_HOST WEB_HOST 指定运行 Locust Web 页面的主机,默认为空 “。
    -P PORT, –port=PORT, –web-port=PORT PORT 指定 –web-host 的端口,默认是8089
    -f LOCUSTFILE, –locustfile=LOCUSTFILE LOCUSTFILE 指定运行 Locust 性能测试文件,默认为: locustfile.py
    –csv=CSVFILEBASE, –csv-base-name=CSVFILEBASE CSVFILEBASE 以CSV格式存储当前请求测试数据。
    –master 不带参数 Locust 分布式模式使用,当前节点为 master 节点。
    –slave 不带参数 Locust 分布式模式使用,当前节点为 slave 节点。
    –master-host=MASTER_HOST MASTER_HOST 分布式模式运行,设置 master 节点的主机或 IP 地址,只在与 –slave 节点一起运行时使用,默认为:127.0.0.1.
    –master-port=MASTER_PORT MASTER_PORT 分布式模式运行, 设置 master 节点的端口号,只在与 –slave 节点一起运行时使用,默认为:5557。注意,slave 节点也将连接到这个端口+1 上的 master 节点。
    –master-bind-host=MASTER_BIND_HOST MASTER_BIND_HOST 做分布式压测时,指定分机IP。只用于master。如果没有指定,默认是所有可用的IP(即所有标记主机IP的slave)
    –master-bind-port=MASTER_BIND_PORT MASTER_BIND_PORT 做分布式压测时,指定分机port。默认是5557与5558。
    –no-web no-web -c 和 -r 配合 模式运行测试,需要 -c 和 -r 配合使用.
    -c NUM_CLIENTS, –clients=NUM_CLIENTS NUM_CLIENTS 指定并发用户数,作用于 –no-web 模式。
    -r HATCH_RATE, –hatch-rate=HATCH_RATE HATCH_RATE 指定每秒启动的用户数,作用于 –no-web 模式。
    -t RUN_TIME, –run-time=RUN_TIME RUN_TIME 设置运行时间, 例如: (300s, 20m, 3h, 1h30m). 作用于 –no-web 模式。
    -L LOGLEVEL, –loglevel=LOGLEVEL LOGLEVEL 选择 log 级别(DEBUG/INFO/WARNING/ERROR/CRITICAL). 默认是 INFO.
    –logfile=LOGFILE LOGFILE 日志文件路径。如果没有设置,日志将去 stdout/stderr
    –print-stats 不带参数 在控制台中打印数据
    –only-summary 不带参数 只打印摘要统计
    –no-reset-stats 不带参数 Do not reset statistics once hatching has been completed。
    -l, –list 不带参数 显示测试类, 配置 -f 参数使用
    –show-task-ratio 不带参数 打印 locust 测试类的任务执行比例,配合 -f 参数使用.
    –show-task-ratio-json 不带参数 以 json 格式打印 locust 测试类的任务执行比例,配合 -f 参数使用.
    -V, –version 不带参数 查看当前 Locust 工具的版本.

      总结

      前面讲案例的时候也讲过命令详情,这里单独拎出来讲一下常用的一些命令,方便以后查阅。另外,对测试及测试开发感兴趣的,有思想的小伙伴们可以加入QQ群,一起学习与沟通。

  • 相关阅读:
    BZOJ 1391: [Ceoi2008]order
    BZOJ 4504: K个串
    2019 年百度之星·程序设计大赛
    POJ 2398 Toy Storage (二分 叉积)
    POJ 2318 TOYS (二分 叉积)
    HDU 6697 Closest Pair of Segments (计算几何 暴力)
    HDU 6695 Welcome Party (贪心)
    HDU 6693 Valentine's Day (概率)
    HDU 6590 Code (判断凸包相交)
    POJ 3805 Separate Points (判断凸包相交)
  • 原文地址:https://www.cnblogs.com/liudinglong/p/13200598.html
Copyright © 2011-2022 走看看