某web项目需求信息:要求在用户的登录时间小于5秒(包含登录中下载所有资源的时间)情况下的最大用户并发数。
场景描述:以小规模的用户数每格一定的时间递增用户,递增的用户随正在运行的用户一起并发登录。每个用户的响应时间超过5秒就认为是错误。
LoadRunner实现方式:
1、录制脚本并把登录过程定义为一个事务,在事务前加一集合点;
2、使用手动方案,设置用户数为较大的用户数;
3、设置集合策略,选择“释放:当达到100%运行用户时”;
4、设置加载方式为“每x秒加载y个用户”,数字根据具体情况设置;
5、设置持续时间为“无限期运行”;
6、在Controller的运行时设置中设置“浏览器仿真”,选中“下载非HTML资源”和“每次迭代模拟一个新用户”;
7、在“Internet协议首选项”的高级设置中,选中“在本地保存快照资源”和“出现错误时激活快照”;
8、接上步,单击“设置高级选项”右侧的“选项”按钮,在弹出的窗口中设置“HTTP请求连接超时”“HTTP请求接收超时”“步骤下载超时”均为5秒,并选择“由资源引起的步骤超时是一条警告信息”为否。
9、开始运行脚本。
辅助信息:
1、可以参考“从Controller中监视VU执行脚本的情况”了解Virtual User的执行情况。
2、可在脚本中适当增加检查点。
3、以上第8步可能不太合理,你看出来了吗,一定还有更好的方式吧^_^
从Controller窗口中查看当前脚本中的参数和vu的迭代次数的脚本实例:
#include "as_web.h"
static int iteration;
Action()
{
char *pp;
//请自定义参数文件NewParam
pp="value={NewParam}";
//在vugen调试窗口中显示当前参数值,在Controller窗口中不会显示出来
lr_output_message("Para is:%s",lr_eval_string("{NewParam}"));
//在Controller监视窗口中显示当前参数值和当前vu迭代次数,在vugen调试窗口中不会显示出来
lr_vuser_status_message("Para is:%s,%dTimes Iteration",lr_eval_string("{NewParam}"),++iteration);
return 0;
}
运行场景时在Controller运行窗口中单击Vusers按钮(开始方案按钮的下面),弹出窗口中可看到信息。
文章来源于领测软件测试网 https://www.ltesting.net/