一、下载安装
// TODO 待补充
二、主页面说明
三、使用总结
1、测试场景设计(根据自己的需求设计场景:略)
2、清空数据(若不影响也可不清空)
3、初始化数据(根据自己的需求初始化依赖的数据:略)
4、写测试脚本:
1)创建脚本文件
2)编写脚本
Action() {
char * filename = "e:\\test\base_url.txt";
long file_stream;
char url[100];
file_stream = fopen(filename, "r");
fgets(url, 100, file_stream);
lr_save_string(url, "url");
/**/
lr_think_time(10); // 设置思考时间,即每一个vuser,其每次的操作间隔
lr_start_transaction("myTransaction"); // 随便写,与下面的结束事务一致即可
web_reg_find("Search=All", "SaveCount=mycount", "Text=errCode\":0", LAST);// 此处表示寻找返回结果中包含errCode:0的数据
web_reg_save_param("token", "LB=token\":\"", "RB=\",", "Ord=1", "Search=All", LAST); // 从结果集中截取token的值,同一组的其他脚本在当此可直接使用
web_submit_data("usermanager!getRedInitFrom.action", "Action={url}/user/login?username={username}&password={password}", "Method=POST", "TargetFrame=", "RecContentType=text/html", "Snapshot=t10.inf", "Mode=HTTP", ITEMDATA, LAST);
if (atoi(lr_eval_string("{mycount}")) > 0) {
lr_end_transaction("myTransaction", LR_PASS);
lr_output_message(lr_eval_string("----成功"));
} else {
lr_end_transaction("myTransaction", LR_FAIL);
lr_error_message(lr_eval_string("----{username}{password}失败"));
//return -1;
}
return 0;
}
注:其中base_url.txt中的内容为:http://127.0.0.1:8080
若参数为json字符串则可进行URL编码后,使用变量替换相应位置。若使用jsonBody则需换对应的传输方式设置
5、构造数据:test.dat
注:1)文件名以.dat结尾;2)每一行表示一个vuser的数据,每个变量用逗号隔开;3)第一行是变量名;4)最后需要保留一条新行;5)若存在编码问题,需要使用notpad++等转化为“无BOM格式的UTF-8”即可
6、测试脚本中使用数据
1)打开参数列表
2)设置主键(vuser以此键隔离)
3)设置其他变量
7、run测试脚本(只使用变量中的第一条记录进行脚本自身的正确性验证)
8、设置场景:
1)选择脚本
2)设置结果保存目录及替换规则
3)设置vuser启动步频
9、run一次所有vuser(校验.dat中所有的构造数据的正确性)
10、run10分钟:(稳定运行时间,不算启动和停止的过程)
1)设置Duration
2)设置vuser结束步频与启动步频一致
3)run压测
11、测试结果分析整理:thinktime、响应时间、成功率、TPS
综上:可以使用LR进行性能测试啦!!!!