jmeter case编写
一、jmeter接口case编写(发送get、post请求,检查点)
1)新建线程组(并设置线程以及并发策略)
2)添加接口
具体接口知识会单写一章,地址:https://www.jianshu.com/p/12cc5bb89d11
第一步环境配置:
那么为了方便,我们,我们把一些http请求的公用参数设置为默认,那就需要用到配置原件中个叫做用 户定义的变量 以及 http请求默认值 的插件,用户定义的变量中填写需要用到的测试环境,在请求默认值中添加,${}来调用
第二步:接口case编写
post请求:(根据content-type来填写case),post请求一般为插入数据库操作,如登录,下订单等等
因为我们的登录content-type为 application/x-www-form-urlencoded,故采用参数传值方式
get请求如下:
路径后与参数链接用?
如果有多个参数的话是用“&”衔接的,拆分为key1 = value1 & key2 = value2 类似这种key和value为键值对相应
添加断言:
①响应文本
②jsonpath断言
③bean shell断言
后续补上
参数关联(参数传递,依赖关系):
有些接口之间存在着依赖关系,比如添加购物车接口,添加购物车的商品生成购物车id,在进行勾选逻辑、修改sku的选型选色时需要用到生成的购物车id
1、添加购物车接口调试成功
2、提取关联数据
正则表达式提取----添加正则表达式提取器,若想取的值未取到,可以把正则表达式两边的数据扩大点
. 关于正则表达式
():括起来的部分就是要提取的。
.:匹配除换行外的任何字符串。
+:代表+号前面的字符必须至少出现一次(一次或多次)。
?:代表?前面的字符最多可以出现一次,在找到第一个匹配项后停止(0次或1次)。
:代表号前面的字符可以不出现,也可以出现一次或者多次(0次、1次或者多次)
(.*):贪婪模式,匹配尽可能多的字符
(.*?)或(.+?):匹配尽可能少的字符,一旦匹配到第一个就不往下走了。
jsonpath提取:
beanshell提取: 添加->后置处理器->beanshell
b. 关于模板
若想提取多个值的话,比如是a和b这两个值,则可以写成:$1$$2$。无论要提取多少个值,引用名称就是一个的,比如名称为id,${id_go}:获取整个字符串ab,${id_g1}:获取的是a,${id_g2}:获取的是b。
下面有一个具体的实例,如下图所示:
获取的购物车使用方式: