载包中包含了它自己的WAS测试脚本。
fwwwhost0ycom【图1】制作WAS脚本是相当简单的,不过要制作出模拟真实用户活动的脚本有点儿复杂。如果你已经有一个运行的Web网站,可以使用Web服务器的日志来确定Web网站上的用户点击分布。如果你的应用还没有开始运行,那么只好根据经验作一些猜测了。图1这个脚本中我们假定有30个会员在浏览书店,同时又有一个会员正在购买。要模拟两者混合而成的行为,首先必须创建页面组并在脚本的PageGroup分枝确定点击分布情况。在PageGroup分枝中我们可以增加、修改或删除页面组,也可以为各个组修改流量的分布。图2显示了grp_browse和grp_buy这两个页面组以及30比1的流量分布。H0ST0Ycom
fH0stoycom【图2】创建了页面组之后,我们就可以在主脚本视图中赋予各个请求不同的页面组,如图3所示。为每个请求指定页面组相当于告诉WAS如何分布流量。记住在本例中对grp_buy组页面的请求约占总数的3,而对grp_browse组页面的请求约占97。H0stoycom
主机之家【图3】如果需要在查询字符串中传递“名字值”对,可以用WAS的查询字符串
f编辑器来定义各个变量的所有可能的值。在输入变量值后,既可以要求WAS顺序地使用变量的各个值,也可以要求WAS在请求时随机选择变量值。这在一定程度上增加了脚本所模拟行为的真实性,也可以帮助避免缓冲对测试结果的影响准备好测试脚本之后,我们可以调整测试配置以便观察不同条件下的应用性能。图4是WAS的设置界面。wwwhostoycom
【图4】StressLevel和Stressmultiplier这二个项决定了访问服务器的并发
f连接的数量。Microsoft建议不要选择超过100的StressLevel值。如果要模拟的并发连接数量超过100个,可以调整Stressmultiplier或使用多个客户机。在负载测试期间WAS将通过DCOM与其他客户机协调。有关在测试中使用多个客户机的更多信息,参见httpwebtoolrtemicrosoftcomkbhkb13htm。如果网站提供个性化服务,要进行身份验证或使用Cookies,我们还要为WAS提供一个用户目录。WAS中的用户存储了发送给服务器的密码以及服务器发送给客户端的Cookies。增加用户数量并不增加Web服务器的负载。必须提供足够数量的用户以满足并发连接的要求(StesssLevel乘以StressMultiplier)。有关线程、用户、Cookies相互作用的更多信息请参见httpwebtoolrtemicrosoftcomThreadsWASThreadshtm。wwwhostoycomWAS允许设置warmup(热身)时间,一般可以设置为1分钟。在warmup期间WAS开始执行脚本,但不收集统计数据。warmup时间给MTS、数据库以及磁盘r