一、风暴平台
1.1、添加简单控制器与HTTP请求默认值和信息头管理器
简单控制器:添加控制器是为了将测试用例分组,分组能够更加清楚以及有条理的去测试,也具有一定的观赏性
HTTP请求默认值:我们在请求同一个项目的接口时,往往这些接口的部分参数是相同的。这时候,如果接口数量巨大,我们可以通过设置【HTTP请求默认值】来将这些相同的参数值抽取出来统一设置,而在单个接口中就可以将这些配置空置,jmeter会在执行请求时去读取【HTTP请求默认值】中的参数值。
HTTP信息头管理器:我们在请求同一个项目的接口时,往往这些接口的部分参数是相同的。这时候,如果接口数量巨大,我们可以通过设置HTTP信息头管理器来添加或覆盖HTTP请求头的信息
1.2登录
1.2.1 将之前定义的简单控制器命名,命名之后再第一个简单控制器中添加一个名为HTTP请求的取样器,具体操作如图所示:
1.2.2jmeter和postman一样,需要先在web网站中抓取数据,并且将数据添加到jmeter中,因为之前已经添加了信息头管理器和请求默认值所以在添加数据时可以将之前添加过的数据忽略,直接添加没有覆盖的信息,具体添加的信息如下图所示:
1.2.3添加断言
此时需要在登录的这个HTTP请求下添加断言,右击登录,选择添加--》断言---》jp@gc - JSON/YAML Path Assertion 具体操作如图所示
此时需要断言多少个数据按上述操作添加断言即可
添加断言后需要添加一个json提取器,因为登录完成后此会有一个名为token的全局变量,此时我们需要将这个变量提取出来并且命名,这样的话不管这个token怎样变化我们都可以使用,具体操作如图所示:
添加后就可以命名了,如图所示:
1.3首页
1.4产品管理
在他的目录下创建四个简单控制器,因为目录下有四个接口需要测试所以需要添加四个简单控制器
1.4.1添加产品
第一步、在目录下添加两个HTTP的取样器
第二步、将抓取到的数据填入这两个取样器
第三步、为两个取样器添加断言,验证响应数据与请求数据是否符合逻辑
第四步、因为此时响应数据中有一个变量所以我们要把这个变量提取出来,先添加一个json提取器,并且设定全局变量的数据
1.4.2查看产品详情页
第一步、在查看详情页目录下添加一个HTTP取样器,并将提取到的数据填写进去
1.4.3搜索产品
第一步、为此目录创建三个HTTP取样器
1.4.3.1默认搜索
第二步、在目录下添加断言
1.4.3.2搜索自己添加的产品
第二步、在目录下添加断言
1.4.3.3搜索不到
第二步、在目录下添加断言
1.4.4修改产品
在此目录下添加五个HTTP取样器
1.4.4.1修改名称
第二步、在目录下添加断言
1.4.4.2修改类型
第二步、在目录下添加断言
1.4.4.3修改版本
第二步、在目录下添加断言
1.4.4.4修改负责人
第二步、在目录下添加断言
1.4.4.5修改描述
第二步、在目录下添加断言
1.5、JSON断言和jp@gc - JSON/YAML Path Assertion和响应断言三者的区别
jp@gc - JSON/YAML Path Extractor:可以提取更为复杂的结构
json断言提:和jp@gc - JSON/YAML Path Extractor来比没有jp@gc - JSON/YAML Path Extractor强大
响应断言:可以精确断言,也可以模糊断言,属于可以调控的断言,模糊断言可以断言响应数据中的某一个字符,只要包含这个字符就可以断言通过
jp@gc - JSON/YAML Path Extractor实例:
json断言案例:
响应断言:
1.6请求参数为中文,请求成功后显示??,怎么解决?
响应数据中文显示乱码:
1、打开jmeter的配置文件,目录为:bin目录下的jmeter.properties
2、搜索到sampleresult.default.encoding,取消注释,说的简单点就是取消前面的#
3、把编码修改为utf-8,具体如下
sampleresult.default.encoding=utf-8
4、重新启动jmeter
1.7动态参数操作步骤
第三步、使用
在此处使用的话,固定格式为${名称}
在此处使用的话,固定格式为${名称}
在此处使用的话,固定格式为${名称}