Web 性能测试工具 Siege 参数详解 & 示例
Posted OSC开源社区
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Web 性能测试工具 Siege 参数详解 & 示例相关的知识,希望对你有一定的参考价值。
CentOS 上安装 Web 性能测试工具 Siege 一个简单的示例:
示例 ==> 并发请求指定URL http://download.joedog.org/
siege -c 5 -r 2 http://download.joedog.org/
参数说明: -c 是并发量,并发数为5, -r 是重复次数, 重复2次
某次运行的结果~
在本篇博文中,我们将对Siege使用方法和参数,结合示例进行说明~
Siege使用方法
可以先通过 siege -h 或者 siege --help 命令,查看一下 siege 的帮助信息,如:
从上述帮助信息中,可以看出siege的使用方法有如下三种方法
Usage:
1.siege [options]
2.siege [options] URL
3.siege -g URL
其中option的可选项有如下这些:
siege [options]
该使用方法主要用于:
► 查看版本信息
► 查看帮助信息
► 查看当前配置信息
使用siege -V 或者 siege --version 查看siege版本信息
使用siege -h 或者 siege --help 查看帮助信息
使用siege -C 或者 siege --config 查看当前Siege的配置信息
siege -g URL
获取指定URL的Header信息,并显示HTTP处理信息~
siege -g http://www.baidu.com
siege [options] URL
这种使用方法是最主要的,接下来,结合示例对参数的使用进行说明~
Siege 参数说明 & 示例
Siege 常用参数
一般测试基本上多个参数组合在一起来完成的,下面,我们就一起来玩几个测试示例~
并发请求URL
siege -c5 -r2 http://www.bing.com
在此基础上增加持续时间,设置为5秒
siege -c5 -r2 -t5S http://www.bing.com
多个 URL 场景测试
问题: 如果想测试多个URL怎么办呢?
我们只要将多个URL存放到一个文件中即可~
通过siege -C我们可以看到如下信息,
从上述信息中可以看出,Siege默认情况下URLS FILE的路径为/usr/local/etc/urls.txt
urls.txt的内容如下:
我们可以通过 -f 参数来指定一个文件,如/srv/myurls.txt, 里面存放指定网址
注,上述URL很简单,并不在Header或者其他地方设置参数~
使用如下命令即可~
siege -c5 -r2 -f /srv/myurls.txt
记录结果到日志
如果想把测试结果存放到日志文件中去,可以使用--log参数,如:
siege -c5 -r2 --log=/srv/siege_result.log -f /srv/myurls.txt
其中,
这些结果信息会记录到指定的 siege_result.log 文件中,
Header 参数传值
在平时写接口的时候,可能需要先通过一个key获得相应的token,在这种时候,获取token的接口,需要在Header中设置key的参数和值。
在这种情况下,可以通过--header "key:abcdefg123456789" 这样的方法来进行测试~
如:
测试示例:
POST + JSON测试
假设我们需要测试一个接口方法,POST请求,请求内容为JSON, 并且需要在Header中使用AccessToken。
问题:
这样的情况,我们如何进行传值和测试呢?
Header中的传值可以使用--header "accessToken:c6fe5634d629497ba1bb9e89c2e2fb59"来完成。
至于提交的 JSON 内容,可以将其放到一个文件中( 如myjson.txt ), 本示例文件中的内容如下:
然后指定URL路径 和 json体的文件路径
'http://127.0.0.1/v1/control/3WIMLT4P3FZvirtualsn0000000 POST < /srv/myjson.txt'
注意:
上述内容需要用单引号括起来,否则会产生错误~
本文使用的示例如下:
siege -c5 -r1 --header "accessToken:c6fe5634d629497ba1bb9e89c2e2fb59"
'http://127.0.0.1/v1/control/3WIMLT4P3FZvirtualsn0000000 POST < /srv/myjson.txt'
以上是关于Web 性能测试工具 Siege 参数详解 & 示例的主要内容,如果未能解决你的问题,请参考以下文章