1.启动jmeter。
我们可以找到Jmeter/bin 目录下的jmeter-server这个脚本,运行即可。
- 在下图打开的Jmeter 页面中,右键“测试计划” -> “添加” -> "Threads(Users)" -> “线程组”, 建立线程组。然后添加HTTP请求,
- 右键“线程组” -> “添加” -> “Sample” -> “HTTP请求”, 输入“服务器名称或IP”,对应的端口号,http默认端口号80,可以不写。
以下请求为GET, 所有“方法”那选择“GET”, 输入对应的路径,添加参数及值。
- 右键“线程组” -> “添加” -> “监听器” -> “察看结果数”, 添加“察看结果数”, 以察看运行后的结果,如果所示。
2.jmeter-http接口脚本添加header
以获取学生信息接口为列,如下图添加header;添加完成以后,在http信息头页面填写名称:Referer,值:服务器的域名;
运行之后可以看到结果成功;
3. jmeter-http接口添加cookie;
以金币充值接口(gold_add)为例,建立一个HTTP请求改名“金币充值”,选取请求方式POST, 输入对应的host, path以及同请求一起发送的参数和值。
由于此接口有权限验证,需要admin用户才可以做操作,需要添加cookie, 因此需要添加"HTTP Cookie 管理器"以传递Cookie。
添加"HTTP Cookie 管理器" 方法如下图所示, 右键“金币充值” -> “添加” -> “配置元件” -> "HTTP Cookie 管理器"
设置Cookie 的名称(即username 的值),填写域;
最后可以通过“察看结果树”的响应数据查看结果。
4.“用户定义的变量”的应用
以获取学生信息接口(stu_info) 为例,添加一个“用户定义的变量”,设置变量"host" 以及值,这样在获取学生信息接口(stu_info)就可以通过"${host}"取得“服务器名称或IP”的值。
5. “CSVDataSet Config”和“函数助手对话框”的使用
以注册接口为列,该接口有3个参数:username;pwd;cpwd,在本地创建一个txt文件,添加username和pwd 以及cpwd的值,对脚本设置6个线程或者循环6次,以注册这6个用户;例如:
然后右键“线程组” -> “添加” -> “配置元件” -> "CSV Data Set Config",如果仅应用于“增加学生”接口的话,可以直接在“增加学生”接口下面创建"CSV Data Set Config"。
然后在下图页面中,Filename填写之前建立的TXT文件的路径,这里是win10系统,存在权限问题,直接将TXT文件放在jmeter的bin目录下面直接读取,所以这里的Filename路径直接填写TXT的文件名即可:uesrname.txt, 在"Variable Names" 输入"username" 和"pwd",以逗号隔开,为避免插入的数据乱码;
由于"CSV Data Set Config"中的变量名为username和pwd,因此在"注册”接口的"Parameters" 中将值分别替换为${username}, ${pwd}和${pwd}。运行之后循环6次注册6个用户;
以上注册时,也可以使用函数助手随机生成进行注册用户,在选项里找到函数助手,然后选择—Random,输入最小值1,最大值999,点击“生成”之后函数字符串;复制此函数字符串;
在"CSV Data Set Config"中的变量名为username替换为xuezhi${__Random(1,999,)},运行之后注册的用户名是以xuezhi开头然后加上随机生成的数字组成注册的用户名,pwd和cpwd的值还是取的username.txt文件中pwd的值,同理,pwd的值也可以按照此方式随机获取;
6.应用"jp@gc - JSON Path Extractor" 来实现
右键“登陆” -> “后置处理器 -> "jp@gc - JSON Path Extractor"
通过“察看结果数”得到Response 的结果后, 将“JSONPath Expression” 输入"$.login_info.sign", 设置变量"sign2", 给金币充值接口(gold_add)用
因此需要在“HTTP Cookie 管理器”中将${username}的值输入${sign2},代替之前手动输入的那一串码。
今天就写到这里吧,很晚了,下次继续。如有错误,欢迎指出!