controllerjavascript
一、设计手工场景,理解集合点的策略html
二、添加load generatorjava
1、controller基础知识web
1.controller的原理json
经过场景设计来模拟用户的真实操做并调用vugen中的脚本,而后经过设置压力机产生压力,在场景运行中实时监控用户的执行状况,tps、响应时间、吞吐量、服务器资源使用状况服务器
2、contrller并发
1.功能截图介绍app
2.为何java vuser协议以进程跑?高并发
java vuser协议以线程跑,发现压力根本上不去,还须要实际操做进行研究。性能
3.建立集合点(实际性能测试的时候,使用集合点的状况很少,由于还没到这种轮番请求的测试场景以前,服务器通常已经扛不住通常的性能测试场景了)
1)在事物前一行右键,【insert】→【rendezvous】
2)如图,建立成功
2)回到contoller软件,从新选择想要压测的脚本,让集合点生效,进行集合点设置
3)集合点策略的三种方式
第一种:当X%个用户到达集合点时释放;
第二种:当X%个当前的并发用户到集合点时释放,相似于分批对服务器产生压力,看服务器的及时处理能力;
第三种:当X个用户到达集合点时释放
4)做用:1)模拟瞬间的并发,2)主要用于这种秒杀场景
登陆脚本代码:
Action() { lr_save_string("120.78.128.25:8765","IP"); //关联登陆成功 web_reg_save_param_ex( "ParamName=success", "LB=<p class=\"success\">", "RB=</p>", //"DFEs=test", //"NotFound=warning", "Ordinal=1", //"SaveOffset=2", //"SaveLen=3", SEARCH_FILTERS, "Scope=ALL", //"RelFrameID=1", //"RequestUrl=testURL", //"ContentType=text/html", LAST ); //登陆成功 lr_rendezvous("登陆");//建立集合点 lr_start_transaction("登陆成功"); web_submit_data("web_submit_data", "Action=http://{IP}/Frontend/Index/login", "Method=POST", "TargetFrame=", "RecContentType=application/json, text/javascript, */*; q=0.01", "EncType=application/x-www-form-urlencoded; charset=UTF-8", "Referer=http://{IP}/Index/login.html", "Snapshot=t22.inf", "Mode=HTML", ITEMDATA, "Name=phone", "Value=13825161923", ENDITEM, "Name=password", "Value=lemon123", ENDITEM, "Name=vcode", "Value=", ENDITEM, "Name=remember_me", "Value=1", ENDITEM, "Name=notify_url", "Value=", ENDITEM, LAST ); //判断是否登陆成功 //strcmp(str1,str2):比较两str的大小 lr_convert_string_encoding(lr_eval_string("{success}"),"utf-8",NULL,"Success"); //将乱码的“登陆成功”转码为汉字格式 if(strcmp(lr_eval_string("{Success}"),"登陆成功")==0) { lr_end_transaction("登陆成功",LR_PASS); lr_output_message("本次登陆状态是:%s",lr_eval_string("{Success}")); } else { lr_end_transaction("登陆成功",LR_FAIL); } return 0; }
4.添加压力机,点击下拉框,添加后,在name框中输入压力机的ip
5.如何测试压力机是否链接成功?
6.如何确认服务器的最大并发数?
Edit Action设置,经过设置间隔时间跟每次间隔时间的增长数量,不断提升并发数,以此来观察服务器资源使用状况,当资源使用率 达到最高点时,基本得出服务器的最大并发范围,不至于随意压测将服务崩掉。
7.如何造场景数据?好比:50个用户迭代100,造成5000条数据
1)先设置迭代次数,好比100
2)而后设置并发数50,
3)最后获得50*100条数据
3、遇到问题
一、在刚使用lr时,勾选了红色框百分比,在后续使用中发现以下问题
勾选以后的界面,多了百分比,没有localhost,不能对集合点进行设置,由于是置灰的