大话JMeter2|正确get参数传递和HTTP如何正确使用

举报
霍格沃兹测试学社 发表于 2022/03/23 13:47:18 2022/03/23
【摘要】 上节课展示了JMeter的基础用法:录制回放功能,断言,聚合报告。李政道教授谈论学习方法,他表明我们可以获取很多信息。但是,从了解到理解还有一段路要走。只有亲手练了才能变成理解,能获取信息不代表自己理解。但如何正确get参数传递和HTTP如何正确使用。尤其是在无UI下进行接口的访问。小哥哥带着你用漫画来学习JMeter,让你在轻松的环境里了解新知识。要创建采样器,只需要二步1.添加 “Thr...

上节课展示了JMeter的基础用法:录制回放功能,断言,聚合报告。李政道教授谈论学习方法,他表明我们可以获取很多信息。

但是,从了解到理解还有一段路要走。只有亲手练了才能变成理解,能获取信息不代表自己理解。

但如何正确get参数传递和HTTP如何正确使用。尤其是在无UI下进行接口的访问。小哥哥带着你用漫画来学习JMeter,让你在轻松的环境里了解新知识。

要创建采样器,只需要二步
1.添加 “Thread Group”
2.添加 “Http Request” Sampler

下面的接口逻辑如下:

我们使用的接口是自己创建的程序,同学可以自行寻找其它接口进行训练!
下面就是大名鼎鼎的登录接口:
我们向/api/v1/user/login发送请求,发送的header中需要包括Content-Type : application/json,请求体中如果含有:
“authRequest”: { “userName”:"{{login_email}}", “password”: “{{login_pwd}}”}。

服务器会给我们一个反馈,它会验证邮箱和密码是否正确。如果login_email和login_pwd错误,我们将会得到Fail下面的信息:
如果login_email和login_pwd正确,将会得到Success下面的信息:
有了这个access_token,我们就拿到了许可证。

浏览菜单接口

订单确认接口

注销接口

采样器中定义请求名称:用户登录
配置 Host 、Port、Path = /api/v1/user/login
配置 Method = POST
HttpRequest中的body中添加请求参数
{
“authRequest”: {
“userName”: “user01”,
“password”: “pwd”
}
}

                      在Http Request中添加 Http Header Manager, 管理该请求的header信息
                       添加 “View Result Tree” 用于查看 请求/响应 详情
                       
                       
                       
                       在Http Header Manager中配置如下参数Content-Type :application/json
                       
                       
                       
                       运行并在View Result Tree中检查运行结果
                       
                       
                       
                       
                       创建浏览菜单接口请求,添加HttpRequest请求。 配置请求名称:浏览菜单
                        输入hostname、port、path = /api/v1/menu/list
                         设定 Method = GET
                         
                         
                         在HttpRequest中添加Http Header Manager,暂时保持Http Header Manager中为空,我们之后会对其进行配置
                         
                         
                         
                         返回代码为 401 提示信息为 “Please login first.”。聪明的读者,你们能为小象解答原因吗?
                         
                         
                         
                         
                         
                         
                         
                         
                         我已经创建好了所有接口,暂时保持Http Header Manager中为空:
                         
                         
                         
                         
                         
                         
                         
                         
                         提取接口的JSON返回值,需要在对应的HttpRequest中添加JSON Extractor (JSON 提取器)
                         
                         
                         需要使用json path来匹配需要提取的变量值。由于篇幅有限,我就不讲解json path的使用方法了,请大家自行搜索。
                         
                          $. 代表JSON的根节点。可以在View Result Tree中打开 JSON Path Tester来确定所匹配的JSON变量路径的正确性
                          
                          
                          在JSON Extractor中填入如下信息
                          - 量名称
                          - JSON路径表达式
                          - 匹配编号
                          
                          
                          
                          在接口请求的header中添加access_token变量。JMeter中引用变量的方法 ${变量名}
                           
                           在浏览菜单接口,订单确认接口, 用户注销接口中的header中添加${access_token} 变量
                           
                           
                            运行调试结果,配置正确之后,后台接口可以回传正常响应结果数据
                            
                            
                            
                            本文使用漫画形式向大家展示了JMeter的进阶用法:无UI下进行接口的访问,参数传递机制。同学们,不知道你们学会了吗?请同学们勤加练习,争取学到更多的知识,本内容出自霍格沃兹测试学院,想进一步学习JMeter的使用?请继续关注我们。
                            
                            
                            你喜欢小哥哥这篇文吗?
                            喜观就点“在看”鼓励小哥哥吧获取更多内容:https://qrcode.testing-studio.com/f?from=hwyun&url=https://ceshiren.com/t/topic/16586
                            [点击查看](https://qrcode.testing-studio.com/f?from=hwyun&url=https://ceshiren.com/t/topic/16586)
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。