工具
Badbody 下载地址:http://www.badboy.com.au/
Jmeter 下载地址:http://jmeter.apache.org/
都是免费的可以放心下载
录制脚本
1.打开Badbody
2.地址栏中输入要录制的系统URL
3.录制系统
4.输入密码和验证码登录
5.这个验证码有个窍门,可以弄一个神码,只要是这个验证码的都不真实的校验验证码;也可以测试时暂时关闭验证码的功能。
6.登录成功后随便点几个URL,可以在badbody左侧看到你点击的url,然后在Badbody的File->Export to JMeter导出一个jmeter的脚本
打开Jmeter
1.用Jmeter打开刚刚录制的脚本
2.有二个地方要处理一下
1)打开HTTP Header Manager,如下图。原因是登录之后一般有session
从badbody导出来的时候是没有这个session的,可能导致登录后操作其它的时候又跳转到登录了
2)打开登录的URL
这个地方要选择跟随重定向。
到此配置就完成了。直接运行应该可以看到结果了
可以在Thread Group上添加一个察看结果树
添加CSV参数
在使用Jemeter做压力测试的时候,往往需要参数化用户名,密码以到达到多用户使用不同的用户名密码登录的目的.这个时候我们就可以使用CSV Data Set Config实现参数化登录:
首先通过Test Plan或者Thread Group的Add->Config Element->CSV Data Set Config添加
以下是CSV Data Set Config各个参数的简要说明:
- FileName:即同目录下csv文件的名称
- File Encoding: 默认为ANSI
- Varible Names: 定义文本文件中的参数名,参数之间逗号分隔.定义后可在脚本在以Shell变量的同样的方式引用
- Allow Quoated data: 双引号相关
- Recycle on EOF: 设置为True后,允许循环取值
- Stop Thread on EOF: 当Recycle on EOF为false并且Stop Thread on EOF为true,则读完csv文件中的记录后,停止运行
- Sharing Mode: 设置是否线程共享
设置2个线程去运行,结果如下:
成功读取CSV中的参数.
最后,我们需知Jmeter还有如下方式可以进行参数化:
- User Defined Varibles: 一般对不需要改变的参数进行
- User Parameters:
- 通过系统函数: Options->Function Helper Dialog,通过自己输入参数值,点击"Generate" 按钮产生