jmeter
一、介绍jmeter
(1)jmeter是由apache公司开发的一个纯java 的开源项目,不仅可以做接口测试,还可以做性能测试.
(2)jmerer具备高一致性,可以实现跨平台运行。
(3)jmeter可以实现分布式负载。
(4)jmeter 采用多线程,允许通过多个线程并发取样或通过独立的线程对不同的功能同时取样。
(5)jmeter 具有较高拓展性
测试计划是jmeter的开始:
一、实战
1、jmeter post请求
(1)添加线程组
(2)添加http请求
(3)编辑http请求
(4)在监听器中添加查看结果树:如下
(5)运行接口
(6)断言
(7)断言内容
2、jmeter get请求
二、依赖关系的接口
案例:
1、登录接口
url:POST http://cms.duoceshi.cn/cms/manage/loginJump.do
参数:userAccount=admin&loginPwd=123456
2、用户查询接口
url:POST http://cms.duoceshi.cn/cms/manage/queryUserList.do
参数:startCreateDate=&endCreateDate=&searchValue=&page=1
3、添加cookies管理器
请求默认值:可以将多多个接口中请求一致的参数,写入到请求默认值中
三、接口参数化
变量:${变量名}
(一)用户参数实现变量
1、将账号和密码设置成变量
2、在前置处理器中添加用户参数
3、编辑用户参数
4、线程中修改线程数
(二)用户导入本地文件进行参数化
1、先建一个本地的文件,txt文件 (路径)
2、在配置元件中添加csv data set config
3、编辑csv data set config
4、设置之前也要设置线程数
5、run运行后结果
=============================================
关联接口
省份接口:http://www.webxml.com.cn/WebServices/WeatherWebService.asmx/getSupportProvince
城市接口:http://www.webxml.com.cn/WebServices/WeatherWebService.asmx/getSupportCity
byProvinceName:浙江
1、把省份接口填写好
2、把城市接口填写好
3、在后置处理器中添加正则表达式
4、在城市接口中设置变量
5、编辑正则表达式
正则匹配:
1、引用名称(Name of created variable):
Jmeter变量的名称,存储提取的结果;即下个请求需要引用的值、字段、变量名,后文中引用方法是$
2、正则表达式(Regular Expression):
使用正则表达式解析响应结果,()括号表示提取字符串中的部分值,前后是提取的边界内容。
3、模板(Template):正则表达式的提取模式。
如果正则表达式有多个提取结果,则结果是数组形式,模板1 11,2 22等等,表示把解析到的第几个值赋给变量;从1开始匹配,以此类推。
若只有一个结果,则只能是1 11;
4、匹配数字(Match No):
正则表达式匹配数据的结果可以看做一个数组,表示如何取值:0代表随机取值,正数n则表示取第n个值(比如1代表取第一个值),负数则表示提取所有符合条件的值。
5、缺省值:
匹配失败时候的默认值;通常用于后续的逻辑判断,一般通常为特定含义的英文大写组合,比如:ERROR等。