WAS 的负载使用说明(一)
一、准备工作
为了测试数据的准备性,首先需要删除缓存和 Cookies 等临时文件。启动 IE 后
打开“工具”菜单下的“Internet”选项命令,在打开的“Internet 选项”窗口的“常
规”选项卡中,单击“Internet 临时文件”区域的“删除 Cookies”和“删除文件”按
钮将临时文件删除。
二、录制测试脚本
安装并启动 WAS,程序运行时会打开“Create new script”对话框,即建立一个
新的脚本窗口(如图 1),如果运行 WAS 没有打开该窗口可以单击 WAS 主程序窗口工具栏
上第一个按钮“New Script”即可。
因为是初次使用,所以在新建脚本窗口上单击“Record”按钮打开创建向导对话
框“Browser Recorder-Step 1 of 2”,其中三个选项的作用是选择要记录的内容,分
别为 Request(请求)、Cookies(网上信息块)以及 Host headers(主机标题),可根
据需要选择(图 2),然后单击“Next”即会打开“Browser Recorder-Step 2 of 2”窗
口,单击“Finish”按钮。这样 WAS 会自动启用,并且会打开一个浏览器窗口,此时我
们就可以在浏览器的地址栏中输入要测试的网站网址。随着要测试的网站内容的不断显
示,在 WAS 主界面的“Recording”选项卡中的信息会实时更新(如图 3)。
当浏览器的状态栏显示为“完成”时,我们就可以返回 WAS 窗口,单击“Stop
Recording”按钮返回脚本窗口。
三、测试设置
为了使测试更加准确,更加接按真实效果,需要对录制的测试脚本进行一些设置。
去除静态干扰
由于网页是由图片、文字以及其它动态源码组成的,而一般的静态内容消耗的带宽
并不是很大,因此我们可以将其排除在外。在脚本中选中指向图像、文字以及其它静态
文件项目前的灰色按钮,然后单击工具栏上的“Delete”按钮将其删除(图 4)。
设置并发数
然后在单击“New Recorded Script”下的“Settings”标签,其中“Concurrent
Connections”是设置并发连接数的,其下面的“Stress level (threads)”和 “Stress
multiplier(sockets perthread)” 分别设置对目标服务器的压力及负载程度的,其中
Level 是客户端所产生的线程数目,一个线程可以产生多个 Socket 并发请求,因此将两
者的数值相乘,所获得的数字就是客户端同时连接的并发数(图 5)。
时间设置
时间设置包括“Test Run Time”(测试运行时间)和“Request Delay”(停止
响应)以及“Suspend”(挂起时间)三项。其中测试运行时间是以日、小时、分钟和秒
来设定的,建议该项时间不宜太短,如果设置的并发数较多,那么时间应该按比较增长,
以便产生足够多的请求;而停止时间是指连接时超出这个时间即作超时处理;在挂起时
间处部分为 Warmup 和 Cooldown 两项,一般可以设置为两三分钟为宜,这样做的目的是
避免测试开始和结束时数据的变形,影响测试的准确性。
指定带宽瓶颈
“Bandwith”是指定带宽瓶颈的,即选择访问该网站大多数用户所使用的带宽。
例如访问该网站的绝大部分用户是拨号,那么可以选择 56K。
四、开始测试
做好基本的设置工作后,就可以在左侧选中新建的脚本“New Recorded Script”
项,然后单击工具栏上的“Run Script”按钮,或者打开“Scripts”菜单下的“Run”
命令,这样就开始测试了。测试过程中会以进度条的方式实时显示,待进度条结束我们
即可进行测试结果分析了。
五、数据分析
现在我们就可以打开测试报告来查看测试结果了。单击“View”菜单,选择
“Reports”,在打开的窗口左侧会按时间显示所有测试报告。根据时间选择本次测试报
告,在窗口右侧即可查看具体内容。
在测试报告中最重要的部分就是“Socket Errors”部分和“Result Codes”部
分。其中 Socket Errors 部分共分为 Connect、Send 、Recv 和 Timeouts。其中 Connect
表示客户端不能与服务器取得连接的次数;Send 表示客户端不能正确发送数据到服务器
的次数;Recv 表示客户端不能正确从服务器接次的次数;Timeouts 表示超时的线程数目。
由此我们可以如果这四个数值都比较小,甚至为 0 则说明我们的服务器是经得起考验的;
如果数值居高不下,甚至接近设置的并发数,那么则要好好的检查你的服务器了(图 6)。
另外在“Result Codes”部分,如果 Code 列表下的数值都为 200,那么表示所有
请求都经服务器成功返回,如果数值出现 400 或大于 400,例如 404,那么则需要在左侧
找到“Page Data”节点,查看具体的错误项目,然后作出改正了。
其实要完整的反映出一个网站在服务器上的运行情况,需要不断增减其并发数,
并且进行多次测试,才能了解服务器所能承受的限度,然后才可以在 IIS 中设置允许连
接的最大数目,从而保证网站正常运行。
WAS 的负载使用说明(二)
测试脚本的准备
1、在测试客户端机器上启动 Web Application Stress Tool,在弹出的“建立新脚本”
对话框中选择“Record”按钮;
2、在“Record”参数设置第一步中,所有的 checkbox 都不用选择
到 第二步时直接点击“finish”,过几秒钟会弹出一个 IE 窗口,在此窗口中访问测试数
据生成页面(http://192.168.1.4: 8086/Apply/test),依次点击 5 个测试用例连接,
然后返回 Web Application Stress Tool,停止 Record;
3、将一些没用的记录删去(比如:/Apply/test/index.htm),只留下如下图所示的五条
记录:
在 Server 输入框中输入服务器的 IP,端口号不用输入。改一下脚本名字,比如改为
Joinwork Test;
4、5 个测试用例在实际使用环境中被访问的概率是不一样的。我们可以在 Page Groups
中定义几个 Page Group 来模拟这种访问分布:
在上图中我们定义了 5 个 Group,分别对应:查询可启动流程列表、启动流程、查询个人
待办工作任务、显示任务执行表单和执行任务,它们被点击的次数比率为:1 : 1 : 5 :
5 : 4。
回到脚本主页面,分别将 5 条记录的 Group 改为刚才建立的 Page Group。这样在运行脚
本的时候就会按 Group 定义的比率来产生点击了;
5、下面设置测试并发用户数和测试时间长度。 到 如下图的 Settings 页面,通过 Stress
Level (threads)和 Stress mulitiplters 来设置并发用户数,Test RUn Time 来设置测