利用地名来查询天气预报,在jmeter中查看响应结果
一、准备工作:选择支持 “地名查询” 的天气预报 API
首先要选一个支持直接用地名(如 “北京”“上海”)查询的 API,这里推荐高德天气 API(无需复杂认证,支持中文地名):
API 地址:https://restapi.amap.com/v3/weather/weatherInfo
核心参数:
参数名 说明 示例值
key 高德开发者密钥(免费申请:https://lbs.amap.com/) 你的高德APIKey
city 城市名称(中文) 北京/上海市/广州市
extensions 返回信息类型 base(基础天气,必填)
二、JMeter 完整配置步骤(核心环节)
步骤 1:新建测试计划与线程组
打开 JMeter,右键「测试计划」→「添加」→「线程(用户)」→「线程组」;
线程组配置(新手推荐):
线程数:1(单次查询)
循环次数:1
Ramp-Up 时间:1(秒)
步骤 2:添加 HTTP 请求(配置地名查询)
右键线程组→「添加」→「取样器」→「HTTP 请求」;
填写 HTTP 请求核心配置:
配置项 取值
名称 高德天气 - 地名查询
请求方法 GET
服务器名称或 IP restapi.amap.com
端口号 443(HTTPS 协议)
路径 /v3/weather/weatherInfo
配置请求参数(关键:用中文地名):
点击「参数」标签页→「添加」,填入:
名称 值
key 你的高德 APIKey(替换成自己的)
city 北京
extensions base
步骤 3:添加结果查看器(必加)
右键线程组→「添加」→「监听器」,依次添加 2 个核心监听器:
「查看结果树」:用于查看原始请求 / 响应数据;
「聚合报告」:用于查看请求耗时、成功率等指标。
步骤 4:解决 HTTPS 请求问题(避坑)
高德 API 是 HTTPS 协议,JMeter 默认可能请求失败,需配置 SSL:
点击 JMeter 顶部「选项」→「SSL 管理器」;
无需选择任何证书,直接点击「确定」即可(JMeter 会自动处理 HTTPS 证书)。
三、执行测试并查看响应结果
步骤 1:执行请求
点击 JMeter 顶部「启动」按钮(绿色三角形),等待执行完成(线程组左侧会显示绿色对勾)。
步骤 2:查看响应结果(核心)
打开「查看结果树」→ 选中左侧的「HTTP 请求 - 高德天气 - 地名查询」;
右侧切换到「响应数据」标签页,选择「JSON 格式」(更易读),就能看到完整的天气响应结果:
json
{
"status": "1",
"info": "OK",
"infocode": "10000",
"lives": [
{
"province": "北京市",
"city": "北京市",
"weather": "晴",
"temperature": "5",
"winddirection": "北风",
"windpower": "3级",
"humidity": "45%",
"reporttime": "2025-12-30 14:00:00"
}
]
}
关键结果解读:
status=1:请求成功;
lives[0].city:确认查询的地名(如 “北京市”);
lives[0].weather:天气状况(如 “晴”);
lives[0].temperature:实时温度。
步骤 3:批量查询多个地名(进阶)
如果想同时查询 “北京、上海、广州” 等多个地名,可通过「CSV 数据文件设置」实现:
新建city_list.csv文件,内容如下(编码为 UTF-8):
plaintext
北京
上海
广州
右键线程组→「添加」→「配置元件」→「CSV 数据文件设置」;
配置 CSV:
文件名:city_list.csv(填写文件绝对路径,如D:\test\city_list.csv);
变量名:city_name;
忽略首行:False;
回到 HTTP 请求的「参数」标签页,把city参数的值改为${city_name};
线程组修改:线程数改为 3(对应 3 个地名),循环次数 1;
执行后,「查看结果树」会显示 3 条请求,分别对应 3 个地名的天气结果。
四、常见问题与解决
响应乱码:
原因:JMeter 默认编码不是 UTF-8;
解决:打开JMeter/bin/jmeter.properties,修改sampler.encoding=UTF-8,重启 JMeter。
status=0(请求失败):
原因:APIKey 错误 / 地名格式错误(如 “北京市” 写成 “北京省”);
解决:核对 APIKey,地名仅填 “北京”“上海” 等简洁名称。
HTTPS 请求超时:
原因:网络 / 端口限制;
解决:HTTP 请求中添加「HTTP 请求默认值」,设置超时时间为 5000(毫秒)。
总结
核心配置:选择支持中文地名的高德天气 API,在 JMeter 的 HTTP 请求中填写city(地名)、key(API 密钥)等参数;
结果查看:通过「查看结果树」的「JSON 格式」快速读取地名对应的天气数据;
进阶技巧:用 CSV 数据文件设置实现多地名批量查询,提升测试效率。
浙公网安备 33010602011771号