postman和JMeters是外部接口测试的两个工具,经过界面化的方法,来实现操做http报文携带的请求字段、VK值、json、cookie、header值及文件。本篇主要介绍JMeter。数据库
测试环境:json
接口文档地址:http://doc.nnzhp.cn/api
用户名密码:xiaohei/******服务器
使用JMeter时首先建立一个线程组,在线程组上建立测试任务。cookie
本篇涉及到的测试内容都是get/post的http请求,建立任务时,在线程组-添加-sampler上建立http请求。dom
点绿色三角按钮运行任务,在任务右键-添加-监听器-查看结果树,来观察请求和结果。函数
1、get获取学生信息工具
简要描述:获取学生信息接口post
请求URL:http://api.nnzhp.cn/api/user/stu_info
测试
请求方式:get
参数:
JMeter配置方法: 填写地址、端口默认80、方法GET、填写路径(不带地址)及请求参数名和参数值。
2、post+KV进行用户登陆
简要描述:登陆接口
请求URL:http://api.nnzhp.cn/api/user/login
请求方式:post
参数:
用户名密码:不可描述/不可描述
JMeter配置方法:
1. 填写地址、端口默认80、请求方式改成post、填写路径
2.K-V值在body中配置
3.登陆成功后,服务器返回sign做为客户端的cookie值
3、post+json添加学生信息
简要描述:添加学生信息,这个接口是用来说入参是json类型的
请求URL:http://api.nnzhp.cn/api/user/add_stu
请求方式:post;入参是json类型
参数:
postman配置方法:
一、添加地址、端口、路径
二、在bodydate中配置json脚本,参数名加"",str参数加"',int不加"",必选项必填,结尾以“,”分隔。
另外,若是str中有汉字,须要补充配置编码为utf-8,不然存入数据库为乱码,查不到。
4、(A)post+cookie完成充值
简要描述:学生金币充值接口,这个接口是为了讲添加cookie以及身份验证的
请求URL:http://api.nnzhp.cn/api/user/gold_add
请求方式:post
参数:
该接口有权限验证,须要admin用户才能够作操做,须要添加cookie
cookie中key为登陆的用户名,value从登陆接口中获取,登录成功以后会返回sign
JMeter配置方法:
一、充值操做须要依赖管理员登陆的cookie,右键-添加-配置元件-http信息头管理器
二、在http信息头部管理中加入cookie参数
三、配置充值VK值信息
(B)另外一种高端配置方式:
一、添加用户自定义变量,定义ip
二、添加http cookie管理器,配置管理员登陆的用户名、密码
三、配置充值VK值信息
5、经过Referer value验证,获取全部学生信息
简要描述:这个接口是为了说明怎么添加header信息的
请求URL:http://api.nnzhp.cn/api/user/all_stu
请求方式:get
须要添加header信息,key为Referer value 为http://api.nnzhp.cn/
JMeern配置方法:
一、请求方式为get
二、添加header头部,添加方式与(四)中相同,配置Referer
三、Referer意义:告诉服务器我是从哪一个页面连接过来的,防钓鱼网站
6、经过接口上传文件
简要描述:上传文件接口
请求URL:http://api.nnzhp.cn/api/file/file_upload
请求方式:post
参数:
JMeter配置方法:
一、可使用自定义参数ip,请求方式为post
二、在file upload中,修改文件类型为file,浏览选择文件路径
七:解决乱码问题
JMeter查看结果树为乱码,解决方案:
一、在jmeter的bin目录下找到jmeter.properties这个文件上,搜索sampleresult.default.encoding并改成sampleresult.default.encoding=utf-8,去掉注释符号#
二、重启jmeter
body date中添加中文字符为乱码,解决方案:
一、在jmeter的bin目录下找到jmeter.properties这个文件添加上,将jsyntaxtextarea.font.family=Hack的注释符号#去掉
二、重启jmeter
8、JMeter参数化
Jmeter参数化的方式有三种:用户定义的变量、函数生成器、从文件中读取
一、用户定义的变量,引用方式:${定义参数名称}
二、函数生成器
一、打开函数助手对话框(插件)
二、选择调用的函数,如-random、-time等
三、配置参数,点生成生成对应函数表达式
四、将函数表达式放入对应的参数中调用
随机数-random
时间生成函数-time
三、从文件中读取
路径:填写绝对路径,若是放在bin目录下能够只写文件名
参数化名称:能够填写多个参数,在文本中以定义的符号分隔为多列
9、断言
断言:将返回内容与设置内容相比对,符合则在结果树中返回成功,不符合则返回失败。
好比这里配置一个包括“操做失败”内容的断言,而执行返回结果中查不到此内容,则断言失败。