小强性能测试和python(接口+selenium+Appium)全栈自动化测试招生中
报名QQ:2083503238、1684129674、480934277(所有学员享受终生免费不限次数重学的福利!)
介绍见:http://xqtesting.sxl.cn
Apache自带的ab命令虽然很简单,但是对于调试的时候的测试,还是非常有效的,因此,做网站性能测试,还是有必要了解下的,关于ab详细命令,本文不做介绍,本文只介绍使用POST数据的使用方法。
测试环境
WEB环境服务器,并部署好SHOP系统
使用Xshell连接服务器
开始测试
login.ab 内容,该内容需要在登录的时候使用抓包工具进行抓包,我这里先使用了loadrunner进行了录制,并抓取了录制代码:
web_submit_data("user.php",
"Action={ip}user.php",
"Method=POST",
"TargetFrame=",
"RecContentType=text/html",
"Referer={ip}user.php",
"Snapshot=t3.inf",
"Mode=HTML",
ITEMDATA,
"Name=username","Value={userLoginText}", ENDITEM,//登录用户名
"Name=password","Value=123123", ENDITEM,//登录密码
"Name=act","Value=act_login", ENDITEM,
"Name=back_act","Value={ip}", ENDITEM,//登录后返回地址
"Name=submit","Value=", ENDITEM,
LAST);
经过分析,我们发现,其中的关键值:
"Name=username","Value={userLoginText}", ENDITEM,//登录用户名
"Name=password","Value=123123", ENDITEM,//登录密码
"Name=act","Value=act_login", ENDITEM,
OK,有了这些字段,我们就可以使用工具先调试下,这里使用postman调试,看下效果咋样。YES,成功了,看来我们的数据处理有效,因此我们就可以处理login.ab的内容了,这里还有一个简单的方式,也是通过postman处理,少废话,看图:
然后我们将文本框内红色区域的内容复制到login.ab即可。接下来就可以开始测试了,上代码:
测试命令:
ab -n 10 -c 10 -k -p"/root/login.ab"-T"application/x-www-form-urlencoded""http://192.168.219.130/xiaoqiangshop/user.php"
稍微解释下里面的参数:
-n requests Number of requests to perform
//在测试会话中所执行的请求个数。默认时,仅执行一个请求
-c concurrency Number of multiple requests to make
//一次产生的请求个数。默认是一次一个。
-k Use HTTP KeepAlive feature
-p postfile File containing data to POST
//包含了需要POST的数据的文件。
-T content-type Content-type header for POSTing
//POST数据所使用的Content-type头信息。
由于测试的是登录的数据,为了直观的看出测试结果,我们选用了数据表中的last_login字段,该字段会记录最新的登录时间,首先我们来看下数据库的原始记录:
执行命令
查看最新记录
我们惊奇的发现,我们的测试成功了,我们使用ab命令成功的发送了post数据。
【本文来自小强性能测试培训班学员作品】
本文出自 “小强性能测试&产品经理窝” 博客,请务必保留此出处http://xqtesting.blog.51cto.com/4626073/1845431