51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2730|回复: 3
打印 上一主题 下一主题

[求助] LR 性能测试求助

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2017-6-9 16:06:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
说明

1.用户登录部分,用户名和密码我已经实现参数化了
2.用户登录成功之后,点击【我要报名】,点击【同意以下协议并报名】,进入选择课程页面,每个用户可以自由选择多种课程,选择好之后【保存班级】,主要就是做这一部分的压力测试
3.以下是我录制的脚本,请各位大神帮忙看看,哪些地方该设置参数化和关联
4.脚本需要做哪些修改

脚本顺序


脚本

1.登录脚本
  1. ActionDL()
  2. {

  3.     web_set_max_html_param_len("1024");

  4.     web_url("picinfo.ini",
  5.         "URL=http://se.360.cn/cloud/picinfo.ini",
  6.         "TargetFrame=",
  7.         "Resource=1",
  8.         "RecContentType=application/octet-stream",
  9.         "Referer=",
  10.         "Snapshot=t1.inf",
  11.         LAST);

  12. //  web_add_cookie("CNZZDATA1254046670=1710710057-1491368334-%7C1491368334; DOMAIN=test.lndxpt.com");

  13. //  web_add_cookie("UM_distinctid=15b3ca07cf7e7d-0106a39880d561-6d247a13-15f900-15b3ca07cf8deb; DOMAIN=test.lndxpt.com");

  14. /* Registering parameter(s) from source task id 7
  15.     // {JSESSIONID3} = "jrt39txdore6"
  16.     // */

  17.     web_reg_save_param("JSESSIONID3",
  18.         "LB/IC=jsessionid=",
  19.         "RB/IC=\"",
  20.         "Ord=1",
  21.         "RelFrameId=1",
  22.         "Search=body",
  23.         LAST);

  24.     web_url("lndxreg!toReg.do",
  25.         "URL=http://test.lndxpt.com/lndx1/lndxreg!toReg.do?compCode=tjlndx",
  26.         "TargetFrame=",
  27.         "Resource=0",
  28.         "RecContentType=text/html",
  29.         "Referer=",
  30.         "Snapshot=t2.inf",
  31.         "Mode=HTML",
  32.         EXTRARES,
  33.         "URL=images/bg.png", "Referer=http://test.lndxpt.com/lndx1/lndxreg!toReg.do?compCode=tjlndx", ENDITEM,
  34.         "URL=images/icon_x.png", "Referer=http://test.lndxpt.com/lndx1/lndxreg!toReg.do?compCode=tjlndx", ENDITEM,
  35.         "URL=http://c.cnzz.com/core.php?web_id=1254046670&t=z", "Referer=http://test.lndxpt.com/lndx1/lndxreg!toReg.do?compCode=tjlndx", ENDITEM,
  36.         "URL=http://z11.cnzz.com/stat.htm?id=1254046670&r=&lg=zh-cn&ntime=none&cnzz_eid=1710710057-1491368334-&showp=1600x900&t=%E5%A4%A9%E6%B4%A5%E5%B8%82%E8%80%81%E5%B9%B4%E4%BA%BA%E5%A4%A7%E5%AD%A6&umuuid=15b3ca07cf7e7d-0106a39880d561-6d247a13-15f900-15b3ca07cf8deb&h=1&rnd=1054212925", "Referer=http://test.lndxpt.com/lndx1/lndxreg!toReg.do?compCode=tjlndx", ENDITEM,
  37.         LAST);

  38.     lr_think_time(17);


  39.     lr_start_transaction("登录");

  40.     lr_rendezvous("登录");
  41.     web_reg_save_param("sid",
  42.         "LB=<a href=\"lndxreg!toleave.do?compCode=tjlndx&sid=",
  43.         "RB=\">我要请假",
  44.         "Ord=1",
  45.         "RelFrameId=1",
  46.         LAST);

  47.     web_reg_save_param("sessionloginkey",
  48.         "LB=sessionloginkey=",
  49.         "RB=\">回首页</a>",
  50.         "Ord=1",
  51.         "RelFrameId=1",
  52.         LAST);

  53.     web_submit_data("lndxreg!checkCard.do;jsessionid=jrt39txdore6",
  54.         "Action=http://test.lndxpt.com/lndx1/lndxreg!checkCard.do;jsessionid={JSESSIONID3}",
  55.         "Method=POST",
  56.         "TargetFrame=",
  57.         "RecContentType=text/html",
  58.         "Referer=http://test.lndxpt.com/lndx1/lndxreg!toReg.do?compCode=tjlndx",
  59.         "Snapshot=t3.inf",
  60.         "Mode=HTML",
  61.         ITEMDATA,
  62.         "Name=sname", "Value={SNAME}", ENDITEM,
  63.         "Name=idCard", "Value={IDCARD}", ENDITEM,
  64.         "Name=schoolname", "Value=天津市老年人大学", ENDITEM,
  65.         "Name=compCode", "Value=tjlndx", ENDITEM,
  66.         "Name=log", "Value=", ENDITEM,
  67.         EXTRARES,
  68.         "URL=images/nav_icon.png", ENDITEM,
  69.         "URL=http://z11.cnzz.com/stat.htm?id=1254046670&r=http%3A%2F%2Ftest.lndxpt.com%2Flndx1%2Flndxreg!toReg.do%3FcompCode%3Dtjlndx&lg=zh-cn&ntime=1491368334&cnzz_eid=1710710057-1491368334-&showp=1600x900&t=%E5%A4%A9%E6%B4%A5%E5%B8%82%E8%80%81%E5%B9%B4%E4%BA%BA%E5%A4%A7%E5%AD%A6&umuuid=15b3ca07cf7e7d-0106a39880d561-6d247a13-15f900-15b3ca07cf8deb&h=1&rnd=518854306", ENDITEM,
  70.         LAST);

  71.     lr_end_transaction("登录", LR_AUTO);

  72.     //lr_output_message("username = %s,idCard = %s", lr_eval_string("{SNAME}"), lr_eval_string("{IDCARD}"));

  73. return 0;
  74. }
复制代码
2.登录成功之后,我要报名脚本
  1. ActionXZBMBJ()
  2. {

  3.     lr_think_time(37);

  4.     web_url("sc.png",
  5.         "URL=http://test.lndxpt.com/lndx1/images/sc.png",
  6.         "TargetFrame=",
  7.         "Resource=1",
  8.         "RecContentType=image/png",
  9.         "Referer=http://test.lndxpt.com/lndx1/lndxreg!tonet.do",
  10.         "Snapshot=t6.inf",
  11.         LAST);

  12.     web_url("lndxreg!findclass.do",
  13.         "URL=http://test.lndxpt.com/lndx1/lndxreg!findclass.do?compCode=tjlndx&sid={sid}&scnamelike=&week=&organid=1020002&courseId=11020002&page=1",
  14.         "TargetFrame=",
  15.         "Resource=1",
  16.         "RecContentType=html/text",
  17.         "Referer=http://test.lndxpt.com/lndx1/lndxreg!tonet.do",
  18.         "Snapshot=t7.inf",
  19.         LAST);

  20.     web_url("lndxreg!verifySelectClass.do",
  21.         "URL=http://test.lndxpt.com/lndx1/lndxreg!verifySelectClass.do?sid={sid}&termid=3020004&sclass=&sclid=1465020012",
  22.         "TargetFrame=",
  23.         "Resource=1",
  24.         "RecContentType=html/text",
  25.         "Referer=http://test.lndxpt.com/lndx1/lndxreg!tonet.do",
  26.         "Snapshot=t8.inf",
  27.         LAST);

  28.     web_url("lndxreg!verifySelectClass.do_2",
  29.         "URL=http://test.lndxpt.com/lndx1/lndxreg!verifySelectClass.do?sid={sid}&termid=3020004&sclass=1465020012,&sclid=1465020013",
  30.         "TargetFrame=",
  31.         "Resource=1",
  32.         "RecContentType=html/text",
  33.         "Referer=http://test.lndxpt.com/lndx1/lndxreg!tonet.do",
  34.         "Snapshot=t9.inf",
  35.         LAST);

  36.     web_url("lndxreg!verifySelectClass.do_3",
  37.         "URL=http://test.lndxpt.com/lndx1/lndxreg!verifySelectClass.do?sid={sid}&termid=3020004&sclass=1465020012,1465020013,&sclid=1465020014",
  38.         "TargetFrame=",
  39.         "Resource=1",
  40.         "RecContentType=html/text",

  41.         "Referer=http://test.lndxpt.com/lndx1/lndxreg!tonet.do",
  42.         "Snapshot=t10.inf",
  43.         LAST);

  44.     return 0;
  45. }
复制代码
4.提交报名班级的脚本
  1. ActionBCBJ()
  2. {

  3.     lr_think_time(15);

  4.     lr_start_transaction("保存报名");

  5.     lr_rendezvous("保存报名");



  6.     web_submit_data("lndxreg!checkSc.do",
  7.         "Action=http://test.lndxpt.com/lndx1/lndxreg!checkSc.do",
  8.         "Method=POST",
  9.         "TargetFrame=",
  10.         "RecContentType=text/html",
  11.         "Referer=http://test.lndxpt.com/lndx1/lndxreg!tonet.do",
  12.         "Snapshot=t11.inf",
  13.         "Mode=HTML",
  14.         ITEMDATA,
  15.         "Name=scnamelike", "Value=", ENDITEM,
  16.         "Name=schoolname", "Value=天津市老年人大学", ENDITEM,
  17.         "Name=compCode", "Value=tjlndx", ENDITEM,
  18.         "Name=sid", "Value={sid}", ENDITEM,
  19.         "Name=sessionloginkey", "Value={sessionloginkey}", ENDITEM,
  20.         "Name=log", "Value=", ENDITEM,
  21.         "Name=sclass", "Value=1465020012,1465020013,1465020014,", ENDITEM,
  22.         "Name=termid", "Value=3020004", ENDITEM,
  23.         "Name=courseid", "Value=11020002", ENDITEM,
  24.         "Name=week", "Value=", ENDITEM,
  25.         "Name=organid", "Value=1020002", ENDITEM,
  26.         "Name=page", "Value=1", ENDITEM,
  27.         "Name=topage", "Value=2", ENDITEM,
  28.         EXTRARES,
  29.         "Url=http://z11.cnzz.com/stat.htm?id=1254046670&r=http%3A%2F%2Ftest.lndxpt.com%2Flndx1%2Flndxreg!tonet.do&lg=zh-cn&ntime=1491368334&cnzz_eid=1710710057-1491368334-&showp=1600x900&t=%E5%A4%A9%E6%B4%A5%E5%B8%82%E8%80%81%E5%B9%B4%E4%BA%BA%E5%A4%A7%E5%AD%A6&umuuid=15b3ca07cf7e7d-0106a39880d561-6d247a13-15f900-15b3ca07cf8deb&h=1&rnd=696609092", ENDITEM,
  30.         LAST);

  31.     web_url("lndxreg!checkwait.do",
  32.         "URL=http://test.lndxpt.com/lndx1/lndxreg!checkwait.do?compCode=tjlndx&sid={sid}&sessionloginkey={sessionloginkey}",
  33.         "TargetFrame=",
  34.         "Resource=0",
  35.         "RecContentType=text/html",
  36.         "Referer=http://test.lndxpt.com/lndx1/lndxreg!checkSc.do",
  37.         "Snapshot=t12.inf",
  38.         "Mode=HTML",
  39.         EXTRARES,
  40.         "Url=http://z11.cnzz.com/stat.htm?id=1254046670&r=http%3A%2F%2Ftest.lndxpt.com%2Flndx1%2Flndxreg!checkSc.do&lg=zh-cn&ntime=1491368334&cnzz_eid=1710710057-1491368334-&showp=1600x900&t=&umuuid=15b3ca07cf7e7d-0106a39880d561-6d247a13-15f900-15b3ca07cf8deb&h=1&rnd=1916364215", "Referer=http://test.lndxpt.com/lndx1/lndxreg!checkwait.do?compCode=tjlndx&sid={sid}&sessionloginkey={sessionloginkey}", ENDITEM,
  41.         LAST);

  42.     lr_end_transaction("保存报名", LR_AUTO);

  43.     return 0;
  44. }
复制代码



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2017-6-9 16:42:20 | 只看该作者
脚本问题:

没有检查点
没有特殊原因,登录请放在init里进行初始化
参数化:

从你的描述来看 需要参数化的有这几个

用户名密码
课程参数
最后:
脚本方面能看到的东西不多,性能测试难点是在方案上.
在有明确的业务场景模型后,脚本应该参数化哪些 模型里都会告诉你
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2017-6-9 16:43:10 | 只看该作者
思考时间可以优化下~ 现在全是用的实际的思考时间~ 可以结合业务设置思考时间,然后使用随机分布 如80%-120%。
另:如果做狭义并发的话,需要添加集合点。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2017-6-9 16:45:04 | 只看该作者
建议:

关于什么地方需要参数化和关联,这需要你去分析业务、压测需求来做,你们的业务并不复杂

1. 登录脚本问题

问题1:LR脚本中,最好不要用中文
  1. lr_rendezvous("登录");
  2. web_reg_save_param("sid",
  3.     "LB=<a href=\"lndxreg!toleave.do?compCode=tjlndx&sid=",
  4.     "RB=\">我要请假",   //左右边界不要中文
  5.     "Ord=1",
  6.     "RelFrameId=1",
  7.     LAST);

  8. web_reg_save_param("sessionloginkey",
  9.     "LB=sessionloginkey=",
  10.     "RB=\">回首页</a>",   //左右边界不要中文
  11.     "Ord=1",
  12.     "RelFrameId=1",
  13.     LAST);

  14. web_submit_data("lndxreg!checkCard.do;jsessionid=jrt39txdore6",
  15.     "Action=http://test.lndxpt.com/lndx1/lndxreg!checkCard.do;jsessionid={JSESSIONID3}",
  16.     "Method=POST",
  17.     "TargetFrame=",
  18.     "RecContentType=text/html",
  19.     "Referer=http://test.lndxpt.com/lndx1/lndxreg!toReg.do?compCode=tjlndx",
  20.     "Snapshot=t3.inf",
  21.     "Mode=HTML",
  22.     ITEMDATA,
  23.     "Name=sname", "Value={SNAME}", ENDITEM,
  24.     "Name=idCard", "Value={IDCARD}", ENDITEM,
  25.     "Name=schoolname", "Value=天津市老年人大学", ENDITEM,   //这里的中文,写入后应该不是正常的中文
  26.     "Name=compCode", "Value=tjlndx", ENDITEM,
  27.     "Name=log", "Value=", ENDITEM,
  28.     EXTRARES,
  29.     "URL=images/nav_icon.png", ENDITEM,
  30.     "URL=http://z11.cnzz.com/stat.htm?id=1254046670&r=http%3A%2F%2Ftest.lndxpt.com%2Flndx1%2Flndxreg!toReg.do%3FcompCode%3Dtjlndx&lg=zh-cn&ntime=1491368334&cnzz_eid=1710710057-1491368334-&showp=1600x900&t=%E5%A4%A9%E6%B4%A5%E5%B8%82%E8%80%81%E5%B9%B4%E4%BA%BA%E5%A4%A7%E5%AD%A6&umuuid=15b3ca07cf7e7d-0106a39880d561-6d247a13-15f900-15b3ca07cf8deb&h=1&rnd=518854306", ENDITEM,
  31.     LAST);
复制代码

2. 报名脚本问题
  1. ActionWYBM()
  2. {
  3.     lr_think_time(19);

  4.     web_url("lndxreg!login.do",                  //这里的参数化sid注意要和sessionloginkey、jsessionid 一一对应
  5.         "URL=http://test.lndxpt.com/lndx1/lndxreg!login.do?compCode=tjlndx&sid={sid}&sessionloginkey={sessionloginkey}",
  6.         "TargetFrame=",
  7.         "Resource=0",
  8.         "RecContentType=text/html",
  9.         "Referer=http://test.lndxpt.com/lndx1/lndxreg!checkCard.do;jsessionid={JSESSIONID3}",
  10.         "Snapshot=t4.inf",
  11.         "Mode=HTML",
  12.         EXTRARES,
  13.         "URL=http://z11.cnzz.com/stat.htm?id=1254046670&r=http%3A%2F%2Ftest.lndxpt.com%2Flndx1%2Flndxreg!checkCard.do%3Bjsessionid%3D{JSESSIONID3}&lg=zh-cn&ntime=1491368334&cnzz_eid=1710710057-1491368334-&showp=1600x900&t=%E5%A4%A9%E6%B4%A5%E5%B8%82%E8%80%81%E5%B9%B4%E4%BA%BA%E5%A4%A7%E5%AD%A6&umuuid=15b3ca07cf7e7d-0106a39880d561-6d247a13-15f900-15b3ca07cf8deb&h=1&rnd=543153531", "Referer=http://test.lndxpt.com/lndx1/lndxreg!login.do?compCode=tjlndx&sid={sid}&sessionloginkey={sessionloginkey}", ENDITEM,
  14.         LAST);

  15.     lr_output_message("username = %s,idCard = %s", lr_eval_string("{SNAME}"), lr_eval_string("{IDCARD}"));


  16.     lr_think_time(31);


  17.     lr_start_transaction("同意协议");

  18.     lr_rendezvous("同意协议");

  19.     web_submit_data("lndxreg!tonet.do",                //该函数做一个检查点,验证是否“同意协议”成功
  20.         "Action=http://test.lndxpt.com/lndx1/lndxreg!tonet.do",
  21.         "Method=POST",
  22.         "TargetFrame=",
  23.         "RecContentType=text/html",
  24.         "Referer=http://test.lndxpt.com/lndx1/lndxreg!login.do?compCode=tjlndx&sid=3020002&sessionloginkey=1491370819744-3355",
  25.         "Snapshot=t5.inf",
  26.         "Mode=HTML",
  27.         ITEMDATA,
  28.         "Name=Submit", "Value=同意以下协议并报名", ENDITEM,
  29.         "Name=schoolname", "Value=天津市老年人大学", ENDITEM,
  30.         "Name=sessionloginkey", "Value={sessionloginkey}", ENDITEM,
  31.         "Name=compCode", "Value=tjlndx", ENDITEM,
  32.         "Name=log", "Value=", ENDITEM,
  33.         "Name=sid", "Value={sid}", ENDITEM,
  34.         EXTRARES,
  35.         "URL=images/search_b.png", ENDITEM,
  36.         "URL=images/fenye_nav.gif", ENDITEM,
  37.         "URL=images/jia.gif", ENDITEM,
  38.         "URL=http://z11.cnzz.com/stat.htm?id=1254046670&r=http%3A%2F%2Ftest.lndxpt.com%2Flndx1%2Flndxreg!login.do%3FcompCode%3Dtjlndx%26sid%3D{sid}%26sessionloginkey%3D{sessionloginkey}&lg=zh-cn&ntime=1491368334&cnzz_eid=1710710057-1491368334-&showp=1600x900&t=%E5%A4%A9%E6%B4%A5%E5%B8%82%E8%80%81%E5%B9%B4%E4%BA%BA%E5%A4%A7%E5%AD%A6&umuuid=15b3ca07cf7e7d-0106a39880d561-6d247a13-15f900-15b3ca07cf8deb&h=1&rnd=2067943120", ENDITEM,
  39.         LAST);



  40.     lr_end_transaction("同意协议", LR_AUTO);

  41. return 0;
  42. }
复制代码

3.同意协议之后,选择报名班级的脚本

问题1:图片获取部分可以去掉
问题2:具体搞清楚那个是“选择报名班级”的部分,在该部分做检查点、事务定义

4.提交报名班级的脚本

问题1:做检查点
问题2:request body中,最好不要有中文,LR好像不识别
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-25 16:41 , Processed in 0.071114 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表