Loadrunner实现网络听评课系统登录脚本实例
来源:互联网 发布:谢谢爷爷 知乎 编辑:程序博客网 时间:2024/06/09 23:10
脚本业务流:访问网络听评课——登录平台——退出平台。本次使用LoadRunner11版本。
一、录制脚本注意
1、确保网络听评课能在服务器运行正常。
2、录制前先注册一个测试用户。
3、选择录制协议,网络听评课是一个B/S架构的web系统,使用常用协议“web(HTTP/HTML)”录制。
4、录制选项的设置,特别注意录制时的HTTP/HTML级别的选择是“基于HTML的脚本”还是“基于URL的脚本”,这里选择“基于HTML的脚本”。
5、录制完脚本后,先保存脚本,再回放一遍。
二、优化脚本
1.插入事物点 2.插入集合点 3.参数化 4.插入检查点
使用LoadRunner录制后的脚本,通常都是需要优化完善脚本。这里优化action中的登录部分,优化完善后的脚本如下:
vuser_init()
{
web_url("192.168.1.230",
"URL=http://192.168.1.230/",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t65.inf",
"Mode=HTML",
LAST);
web_url("login.jsp",
"URL=http://192.168.1.230/jsp/login/login.jsp",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Referer=http://192.168.1.230/",
"Snapshot=t66.inf",
"Mode=HTML",
EXTRARES,
"Url=/css/stylecss2.css", ENDITEM,
"Url=/images/BJ.jpg", ENDITEM,
"Url=/images/loginBJ_03.png", ENDITEM,
"Url=/images/but_DL.png", ENDITEM,
LAST);
return 0;
}
Action()
{
lr_think_time(13);
lr_rendezvous("login"); /*设定登陆操作的集合点*/
web_custom_request("login",
"URL=http://192.168.1.230/webservice/ece/login/login?account={usename}&password=123456&dateTime=1486713296375",
"Method=GET",
"TargetFrame=",
"Resource=1",
"RecContentType=application/json",
"Referer=http://192.168.1.230/jsp/login/login.jsp",
"Snapshot=t67.inf",
"EncType=application/json",
LAST);
lr_start_transaction("login_submit_time"); /*该事务点的作用是统计登陆成功的信息*/
web_reg_find("Fail=NotFound", /*增加文本检查点,验证是否登录成功*/
"Search=All",
"Text=EXIT",
"SaveCount=para_count", /*检查到文本的数量存在para_count这个变量中*/
LAST);
web_url("pr1.jsp",
"URL=http://192.168.1.230/jsp/login/pr1.jsp",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Referer=http://192.168.1.230/jsp/login/login.jsp",
"Snapshot=t68.inf",
"Mode=HTML",
EXTRARES,
"URL=/images/ICOindex.png", ENDITEM,
"URL=/images/fxBJD.gif", ENDITEM,
"URL=/images/fxBJBD.gif", ENDITEM,
LAST);
lr_end_transaction("login_submit_time", LR_AUTO);
lr_log_message("用户名:%s", lr_eval_string("{usename}"));
if(strcmp(lr_eval_string("{para_count}"),"0")==0)
lr_log_message("登陆失败!");
else
lr_log_message("登陆成功!");
return 0;
}
vuser_end()
{
lr_think_time(5);
web_custom_request("exit",
"URL=http://192.168.1.230/webservice/ece/login/exit",
"Method=GET",
"TargetFrame=",
"Resource=1",
"RecContentType=application/json",
"Referer=http://192.168.1.230/jsp/login/pr1.jsp",
"Snapshot=t69.inf",
LAST);
web_url("login.jsp_2",
"URL=http://192.168.1.230/jsp/login/login.jsp",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Referer=http://192.168.1.230/jsp/login/pr1.jsp",
"Snapshot=t70.inf",
"Mode=HTML",
LAST);
return 0;
}
1.事务设置
使用函数:lr_start_transaction("事务名称");lr_end_transaction("事务名称",LR_AUTO);
添加方法:insert-start_transaction/end_transaction
注意事项:不要将思考时间(lr_think_time函数)放在事务开始和事务结束之间。
2.插入集合点
使用函数:lr_rendezvous("集合点名称");
添加方法:集合点的设置在菜单“插入--集合”即可,集合点是为了模拟实际场景,在登陆时设置集合点就相当于大家都已输入账号、密码同时点登陆这一操作。注意事项:集合点要放在开始事务的前面,思考时间(lr_think_time函数)的后面。
3.参数化 LR录制登录的脚本,一般需要参数化脚本中的登录用户和对应的密码,以便更加真实地模仿系统的业务操作。
添加方法:
1.手动将用户名保存在文本中添加,点击工具栏图标打开参数列表,或者点击菜单“Vuser--参数列表”,或使用快捷方式“Ctrl+L”,点击新建,定义参数名称username和password,创建表并输入内容;
2.和数据库连接获取参数,详见http://blog.csdn.net/pangnuonuo/article/details/55259881
注意事项:参数化时Each iteration与 Each occurrence区别Each iteration一次迭代中取的是同一个参数,Each occurrence一次迭代中碰到参数化取不同的参数;参数名username和password相对应,通过参数列表中的数据方式和更新值方式来设置,username参数要与password参数对应设置正确,脚本回放时才能模拟用户登录成功,若密码一样参数化用户名就可以。
4.插入检查点
使用函数:web_reg_find()
添加方法:LR的检查点分为文本检查点和图像检查点,添加检查点的方法很简单,在LR的树形视图中,打开视图登录页面,选择需要检查的内容(文本或者图像),鼠标右键选择“添加文本检查点(web_reg_find())”即可。
注意事项:
1.若要手动添加检查点,则需要把检查点设置在返回页面的之前;
2.在脚本中添加了检查点,要在Vuser->Run-Tme Settings中更改下设置,勾选Enable Image and text check。
3.建议使用web_reg_find()抛弃web_find(),具体不同详见http://blog.csdn.net/pangnuonuo/article/details/55259164
- Loadrunner实现网络听评课系统登录脚本实例
- Loadrunner登录脚本
- loadrunner 脚本实例《不断更新》
- LoadRunner Java Vuser 脚本开发实例
- Loadrunner之HTTP接口测试脚本实例
- 在LoadRunner脚本中实现随机ThinkTime
- LoadRunner 脚本实现本地文件上传到服务器
- LoadRunner 脚本实现本地文件上传到服务器
- discuz登录,发布帖子,浏览帖子loadrunner脚本
- LoadRunner登录脚本认证失败的原因分析(六)
- loadrunner手动编写脚本完成一个登录购买流程
- LoadRunner 脚本
- 性能loadrunner--loadrunner录制的一个正常登录事务的脚本
- LoadRunner脚本实例来验证参数化的…
- LoadRunner关联函数的脚本实例--如何操作关联参数
- Loadrunner 测试网页下载文件的脚本实例
- loadrunner中web_reg_find函数的用法及测试脚本实例
- Loadrunner 测试网页下载文件的脚本实例
- 【SQL调优】MYSQL使用PROCEDURE ANALYSE()优化表结构
- 双控开关接线
- Android的Fragment中onActivityResult不被调用解决方案
- CSDN第一篇 blog ————cmd命令常用记录
- iconv()函数的用法
- Loadrunner实现网络听评课系统登录脚本实例
- log4cplus将日志文件名按日期创建
- 造成java.lang.NoClassDefFoundError错误的原因及解决办法
- JSON.NET VS BinaryFormatter 性能
- 安卓搭建nexus私服-2.window下安装nexus-3.0.0-03
- 汉诺塔系列2
- sphinx 分布式索引报错:no enabled local indexes to search
- Android studio中使用Http方法
- 十大Intellij IDEA快捷键 for System.out、main快捷键