好了,我知道你已经迫不及待地打开Pylot的官网了,那我也就不废话了,咱们直接进入主题,从实际应用中看看Pylot到底是怎么个简单法。
如果不考虑网速问题,Pylot的配置大概要5分钟吧(什么?5分钟你都嫌多?你知道我用6k/s的速度爬完所有依赖包的痛苦吗!)。
Pylot依赖wxPython、NumPy和Matplotlib三个包,并且需要Python环境,所以我们一共需要下载5个东西。
第一步:下载Pylot自身
大家点击这个按钮就会跳转到下载页面,然后点最上面那个pylot_1.26.zip就可以下载了。
这里插一句题外话吧,大家可以看到,Pylot的最新版本就是07/06/2009,确实很旧。。。这也是我一开始不想用它的原因,感觉有点不爽。不过实际使用中发现可以满足我的需求,再加上真的很简单(你学习JMeter的时间就够我测N个网站了)所以推荐给和我有一样需求的朋友。
第二步:下载及配置Python:
Python:Pylot需要python2.5以上的版本,打开以后选择对应你的系统的版本,下载好之后双击安装。
第三步:下载三个依赖包
推荐使用
easy_install wxpython numpy matplotlib
或者
pip install wxpython numpy matplotlib
这两种方式来进行安装,简单快捷上档次!
如果你是第一次使用Python的话,强烈建议安装easy_install和pip,他们相当于Linux下的apt-get或者yum,非常好用。具体安装教程我就不写了,大家需要的可以百度一下。
如果你不愿意使用这两种方式安装,也可以分别下载三个安装包进行安装。
wxPython :打开以后选择对应你的系统以及python版本的安装包进行下载,下载完双击安装。
NumPy:打开以后点击按钮进行下载,下载完参照INSTALL.txt文件进行安装。
Matplotlib:打开以后点击按钮进行下载,下载完参照INSTALL文件进行安装。
安装好上述文件之后,我们就可以开始使用Pylot了。你没看错,Pylot本身不需要安装。
配置要压测的url:
在 pylot 的目录下,编辑 testcases.xml 文件。
命令运行:
生成500个客户端,测试时间20秒:
python run.py -a 500 -d 20
Pylot有很多参数,我详细介绍一下:
-a, --agents=NUM_AGENTS |
设置同时访问用户数量 |
-d, --duration=DURATION |
设置总测试时间(秒) |
-r, --rampup=RAMPUP |
设置提升量(秒),我也没太搞懂这个是什么意思 |
-i, --interval=INTERVAL |
设置访问间隔(毫秒) |
-x, --xmlfile=TEST_CASE_XML |
设置要使用的xml文件,默认testcase.xml |
-o, --output_dir=PATH |
设置输出文件路径 |
-n, --name=TESTNAME |
设置测试名称 |
-l, --log_msgs |
设置是否需要日志信息 |
-b, --blocking |
设置是否开启锁定模式,如果开启会锁定输出直到测试结束 |
-g, --gui |
设置是否使用图形界面 |
-p, --port=PORT |
设置xml-rpc监听的端口 |
Pylot可以将测试结果转化成表格以及图的方式展示出来,测试完成后会在results文件夹中生成以当前日期命名的文件夹,打开之后可以看到一个html文件,这个就是测试结果了。
我们来看一个Pylot官方提供的例子吧:测试结果
这是第一部分。
最上面分别是结果的生成时间、测试的开始时间和测试的结束时间。
Workingload Model里分别是测试总时间、用户数以及提升(不太懂什么意思)和间隔时间。
Results Summary里是测试结果统计,可以看到总请求数(requests)、总错误数(errors)和总接受数据量(data received)。
最下面是访问时间统计以及流量统计。
avg是平均访问时间,stdev是标准差,min是最小值,max是最大值。50th %表示 排在50%位置(也就是中间位置)的访问时间,其他以此类推。
这是第二部分。
第一张图表示的是测试时间与响应时间的关系,可以看到随着测试时间增大,响应时间也在增大。
第二张图表示的是测试时间和每秒请求数量的关系,可以看到随着测试时间增大,每秒请求数也在增大。
第三部分我就不截图了,就是具体的每个用户的信息。