目录
本文主要是为我的学生们写的,因为课堂上讲的很细了,所以这里就没有再详细写。大家凑合看看吧。
目录:
chrome浏览器如何查看请求
性能测试需要知道的http知识
手写LR脚本的流程方法
LR脚本增强
环境:win7 64位操作系统 IE8 LR11
说明:
这是个对电脑信息增删查改的网站。
任何人都可以访问,这个系统每天会恢复,所以不用担心用多了之后产生太多脏数据。这个网站有安装包,若有需要,可以在本地部署一下。
使用chrome查看请求
以新增电脑为例,在这个网站中,新增一条电脑信息包括三步:
点击“Add a new computer”按钮加载新增页面
填写信息并保存
返回列表页并自动刷新
篇幅所限,我们先以第二步为例讲一下写脚本的过程。
写脚本需要了解请求发生的整个过程,这需要借助工具。常用的抓包工具都可以。对于普通的http请求,用谷歌浏览器查看即可,很方便。
步骤:
1、打开新增页面后,按一下F12,打开浏览器的控制台,然后点击network标签,如图。
2、填写信息并保存,此时观察控制台中的列表。点击第一条进去,切到head标签下查看请求报文。图中圈出了需要重点观察的部分。
从图中我们可以看到这是一个post请求,状态码是303。(文末有注解)
写脚本
4、写post请求使用的函数有两个,web_submit_form和web_submit_data,这里两个都可以,我们选择第二种。
5、按下F1,在索引列中输入web_submit_data,然后找到对应的方法并复制。
6、将复制的内容粘贴到action方法体中,然后替换url和表单信息。
7、替换完之后,执行。 控制台提示成功,然后我们再到网站上搜一下我们添加的信息,可以搜到,说明我们的脚本是ok的。
8、接下来进行脚本增强,即添加事务、检查点、集合点、参数化。
说明:
不添加失误,在controller中就无法统计TPS,
不添加检查点,就不知道我们的脚本是否真正的执行成功了,
不添加集合点,controller中设置的vuser数就不等于并发数,
不进行参数化,执行新增动作添加的数据就都是重复数据,影响我们后期的压测。
9、参数化参考如下:
10、检查点设置参考:
注意点
注意事项:
每个动作对应一个事务,如新增电脑添加3个事务,便于出问题时排查原因;
检查点放在事务的开头还是末尾,参考F1帮助中的说明;
检查点中的内容用什么,可以通过runtimesetting中日志级别设置为
集合点放在lr_start_transaction的上面,不能放在事务中间,否则影响TPS;
压测需了解的HTTP知识
1、http请求的状态码
1xx:指示信息--表示请求已接收,继续处理
2xx:成功--表示请求已被成功接收、理解、接受
3xx:重定向--要完成请求必须进行更进一步的操作
4xx:客户端错误--请求有语法错误或请求无法实现
5xx:服务器端错误--服务器未能实现合法的请求
2、http有哪些请求方式,get和post请求有什么区别?
get重点在从服务器上获取资源,post重点在向服务器发送数据;
get传输数据是通过URL请求,以field(字段)= value的形式,置于URL后,并用"?"连接,多个请求数据间用"&"连接,如http://127.0.0.1/Test/login.action?name=admin&password=admin,这个过程用户是可见的;post传输数据通过Http的post机制,将字段与对应值封存在请求实体中发送给服务器,这个过程对用户是不可见的;
Get传输的数据量小,因为受URL长度限制,但效率较高,Post可以传输大量数据,所以上传文件时只能用Post方式;
post较get安全性较高,get是不安全的,因为URL是可见的,可能会泄露私密信息,如密码等.
get方式只能支持ASCII字符,向服务器传的中文字符可能会乱码,post支持标准字符集,可以正确传递中文字符。
领取专属 10元无门槛券
私享最新 技术干货