使用Jmeter测试Restful接口

一、添加线程组等元件

添加线程组


1. 添加线程组,Jmeter执行是通过线程组进行驱动的,测试计划必须最少有一个线程组,选中Test Plan,点击右键,添加》Threads》线程组

添加用户参数


2. 在线程组上添加用户参数,用户可以利用此元件进行参数设置,在取样器中进行参数化,用户(线程)在进行参数化取值时可以根据用户来区分,选中线程组,点击右键,添加》前置处理器》用户参数,填写调用的名称,变量值

添加HTTP信息头管理器


3. 在线程组添加HTTP信息头管理器,信息头管理器就是用来维护接口的信息头,需要使用此元件进行维护,选中线程组,点击右键,添加》配置元件》HTTP信息头管理器,填写表头信息x-auth-token、Content-Type等

添加HTTP请求默认值


4. 在线程组添加HTTP请求默认值,该元件的作用是把重复的部分封装起来,一次设置多次使用,选中线程组,点击右键,添加》配置元件》HTTP请求默认值,填写了协议、服务器名称/ip、端口号,HTTP请求中就可以不用输入该选项


二、实现新增检查任务请求

分析请求接口


1. 通过抓包工具fiddle或者谷歌浏览器调试可以知道请求的参数如下,接口方法为post

获取projectId(项目id) ,添加HTTP请求


2. 添加项目查询接口请求,用来获取ProjectId,选中线程组,点击右键,添加》Sampler》HTTP请求,填写名称、协议、方法、路径

添加 JSON Path Extractor提取器


3. 选中该HTTP请求,点击右键,添加》后置处理器》jp@gc - JSON Path Extractor,输入提取的变量名称,以及JSONPath表达式

添加 BeanShell PostProcessor


4. 使用该方法获取的变量,会有【】包含,需要新增该元件进行切割,选中该HTTP请求,点击右键,添加》后置处理器》BeanShell PostProcessor,可以使用java语言进行切割

添加断言


5. 判断响应信息中是否包含{“code”:0,“msg”:“SUCCESS”,选中该HTTP请求,点击右键,添加》断言》响应断言,输入预期结果

获取repoId(仓库id),添加HTTP请求


6. 添加项目关联的仓库查询接口请求,用来获取repoId,选中线程组,点击右键,添加》Sampler》HTTP请求,填写名称、协议、方法、路径

添加 JSON Path Extractor提取器


7. 选中该HTTP请求,点击右键,添加》后置处理器》jp@gc - JSON Path Extractor,输入提取的变量名称,以及JSONPath表达式

添加 BeanShell PostProcessor


8. 使用该方法获取的变量,会有【】包含,需要新增该元件进行切割,选中该HTTP请求,点击右键,添加》后置处理器》BeanShell PostProcessor,可以使用java语言进行切割

添加断言


9. 判断响应信息中是否包含{“code”:0,“msg”:“SUCCESS”,选中该HTTP请求,点击右键,添加》断言》响应断言,输入预期结果

实现接口请求,添加HTTP请求


10. 添加新增检查任务接口请求,选中线程组,点击右键,添加》Sampler》HTTP请求,填写名称、协议、方法、路径、参数,此时需要把之前获取的参数值替换成变量格式,jmeter使用${projectid}格式可以引用生成的变量

添加断言


11. 判断响应信息中是否包含{“code”:0,“msg”:“SUCCESS”},选中该HTTP请求,点击右键,添加》断言》响应断言,输入预期结果


三、添加监听器

添加察看结果树


1. 察看结果树用来察看每次响应结果的响应数据,选中线程组,点击右键,添加》监听器》察看结果树

添加聚合报告


2. 聚合报告可以看到表格显示的结果与图形结果,会统计采样器(请求)执行的次数、平均响应时间、最小响应时间、最大响应时间、吞吐量,选中线程组,点击右键,添加》监听器》聚合报告


如果文章对你有帮助,欢迎关注本人公众号,公众号与本平台文章同步,方便大家查阅,本人会持续推出与测试有关的文章,与大家分享测试技术,每一篇原创文章都是用心编写,杜绝抄袭复制


QQ技术交流群:加群请输入验证信息 博客园
              在这里插入图片描述


微信二维码关注公众号:

在这里插入图片描述


关注之后,回复资源下载,即可获取本人共享的各种资源下载地址

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dkyHNY2D-1569554485737)(https://s1.51cto.com/images/blog/201908/06/2e62f8806e1dc1c391c4332ac7fd70b1.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)]

posted @ 2020-04-19 10:40  Jmeter相关技术交流  阅读(361)  评论(0编辑  收藏  举报