目录
一、注意
二、察看结果树中的显示顺序
三、响应的提取--json提取器(上)
1.绝对路径写法
2.相对路径写法
一、注意
1.察看结果树中,请求显示红色或绿色。
察看结果树中,绿色只是代表网络成功,不代表结果是否准确。(这个是功能测试人员所关注的)
红色,代表结果失败,并不一定就是网络失败。失败的原因有千万种,具体是哪种,需要具体排查。
(参考答案:不管什么原因的失败,只要失败了就是红色。请求失败、超时、断网、服务器维护,都会红的。)
2.察看结果树的请求显示红色,不要截图就只截取样器结果来分析问题。
虽然有的时候,Response code
和Response message
是有点参考价值的,但是不能一眼看出问题。
需要截图:request-body
+ request headers
, response-body
。
如果response-body
里面提示系统错误。如果该项目没有做很好的code的处理,提示系统错误,并不一定是程序的代码有问题。
可能是请求的参数有问题,比如数据类型错误、请求的参数名称错误等,都有可能报系统内部错误。
二、察看结果树中的显示顺序
1.最重要的点:察看结果树中的显示顺序,是根据收到响应的先后顺序显示,是先收到先显示。
jmeter中取样器的执行顺序:在没有逻辑控制器控制时,顺序是从上往下。不管多少人并发,每个线程用户都是从上往下执行。
(如果写了10个接口,写了10个取样器,不管设置的线程数是多少个人,对于每个人而言,都是从上往下,把这10个接口全部都调用一遍。
调用完毕后,又从第一个开始调用起来,设置了几次循环就循环几次。)
会出现取样器的执行顺序与察看结果树中的显示顺序不一致。
例如跑步,我是第一个冲出起跑线的,但是我的速度不是最快的,最终跑到终点线的时候,我可能不是最早到达终点线的。
可能别人起步晚,但是过程中的速度比较快,他就先到达终点了。
2.在察看结果树里,看到了登录请求在前面,注册请求在后面,这是为什么?
现在是多用户的情况。对于每个用户而言,一定都是先注册再登录。
对于某一个用户而言,没有注册成功,没有收到注册的信息,是不会去做登录这件事的。
对于单个用户而言,是绝不会出现先登录再注册的。
多个用户在进行这件事,别的人的登录做完了,就显示在你这个人的注册的前面去了。
三、响应的提取--json提取器(上)
响应的提取:response
提取。
当确定响应信息为json
格式时,我们优先选择用json
提取器提取我们想要的信息。
默认是text
这种显示方式,可以选择json path tester
:
![8ac75efb2df491547738f063a64ee1bb.png](https://i-blog.csdnimg.cn/blog_migrate/5ca3a2185ac2d4bedbe2d8799d3dae4b.png)
1.绝对路径写法
1)json路径提取式,最简单的写法是:
例如:$.data.gqid
![3e81415a6f1b54c4e9c3becfa564f8af.png](https://i-blog.csdnimg.cn/blog_migrate/fe14ad036774b5bcc6b462ca2f3b42fc.png)
绝对路径写法:$.
根路径.
二级路径。
2)在取样器的上面右键添加-->后置处理器-->json提取器:
添加json提取器在这个取样器下面,只对这个取样器的响应结果进行提取。
![c53fa2e7a009a22086077ea13e05d610.png](https://i-blog.csdnimg.cn/blog_migrate/50749ce2b271626d9730efb9d9316a70.png)
3)为了看的明白,添加一个调试取样器,可以看到,json提取器有提取到值:
察看结果树里面显示的都是取样器的结果,所以是有显示调试取样器的。
![7817aabe55c2e0f7b50dce5f564327f7.png](https://i-blog.csdnimg.cn/blog_migrate/e1b335e89f0f8b6df5409eb9acf91c52.png)
![b047cbca59995a5e412742d4cbde9d58.png](https://i-blog.csdnimg.cn/blog_migrate/100471c2b1b3783e59af53ec3a8cc2d9.png)
4)如果json提取器放在两个取样器的外面,只能提取到第二个取样器的响应结果值:
![5b4fb62f8a3b73d877c059268d529d7d.png](https://i-blog.csdnimg.cn/blog_migrate/f264d81bc7d281db26116af8c9a2580e.png)
![70cfa141d467c0bdfb06c11c316750ff.png](https://i-blog.csdnimg.cn/blog_migrate/c9ef8f346d7473f0db9226af1756783f.png)
所以,用json提取器的时候,不建议直接添加到外层。而是要提取哪个取样器的响应结果值,就放在哪个取样器的下面。
注意:别把data
写成了date
,否则会提取不到值。
2.相对路径写法
推荐用相对路径写法,这样不容易写错路径: $..
末梢节点名称。
例如:$..gqid
这种方法,当有多个的时候,一次性会提取出多个值。
脚本链接
链接:https://pan.baidu.com/s/1NzxJqk0GnLnCZhoai3AwjA?pwd=1234 提取码:1234
文章中除标明“图片来自网络”的图片,皆为小编本人所画所截图,计算机知识都一样,如有雷同,纯属巧合。
欢迎关注 “清菡软件测试”,进群加v:qhtester,备注:学校(公司名)+姓名(昵称),否则不予通过,感谢点赞与分享!