您的位置:首页 > 运维架构 > Apache

使用Apache自带的ab命令测试网站性能(小强性能测试培训班学员作品)

2016-09-02 07:50 555 查看
小强性能测试2016年11月6号开课。小强python(接口+selenium+Appium)全栈自动化测试班2017年2月开课报名QQ:2083503238、1684129674、480934277(所有学员享受终生免费不限次数重学的福利!)介绍见:http://xqtesting.sxl.cnApache自带的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数据。
【本文来自小强性能测试培训班学员作品】

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  apache 自动化 小强