阳江市网站建设_网站建设公司_RESTful_seo优化
2025/12/25 20:15:09 网站建设 项目流程

使用万维易源API和JMeter测试接口

🎯 项目目标

使用JMeter调用万维易源的API接口,测试天气查询和快递查询功能。


🌐 万维易源API准备

1. 注册与获取API密钥

1. 访问:万维易源官网
2. 注册账号
3. 在控制台创建应用
4. 获取 AppKey(API密钥)

2. 获取API接口文档

天气查询API

接口地址:https://way.jd.com/he/freeweather
请求方式:GET
参数:
- city: 城市名称
- appkey: 你的AppKey

快递查询API

接口地址:https://way.jd.com/jisuapi/query
请求方式:GET
参数:
- type: 快递公司编码
- number: 快递单号
- appkey: 你的AppKey

🔧 JMeter测试步骤

第一步:创建测试计划

  1. 启动JMeter
  2. 右键测试计划 → 添加 → 线程组
  3. 设置线程组参数:
    • 线程数:1(先测试)
    • Ramp-Up:1
    • 循环次数:1

第二步:添加HTTP请求(天气查询)

右键线程组 → 添加 → 取样器 → HTTP请求名称:天气查询
协议:https
服务器名称:way.jd.com
端口:443
路径:/he/freeweather
方法:GET参数:
名称       值              编码
city       北京             ✓
appkey     你的AppKey       ✓

第三步:添加HTTP请求(快递查询)

右键线程组 → 添加 → 取样器 → HTTP请求名称:快递查询
协议:https
服务器名称:way.jd.com
端口:443
路径:/jisuapi/query
方法:GET参数:
名称       值              编码
type       yuantong        ✓  (圆通快递)
number     你测试的快递单号  ✓
appkey     你的AppKey       ✓

第四步:添加查看结果树

右键线程组 → 添加 → 监听器 → 查看结果树

这样可以看到每次请求的详细结果。

第五步:运行测试

点击工具栏绿色箭头运行,查看结果。


📊 完整测试计划结构

测试计划
└── 线程组(用户组1)├── HTTP请求(天气查询)├── HTTP请求(快递查询)└── 查看结果树

💡 进阶配置

1. 添加HTTP信息头管理器

有些API需要特定的Header:

右键HTTP请求 → 添加 → 配置元件 → HTTP信息头管理器添加:
名称           值
Content-Type   application/json

2. 使用变量(参数化)

创建用户自定义变量:

右键测试计划 → 添加 → 配置元件 → 用户定义的变量变量:
名称       值
APP_KEY    你的AppKey
CITY       北京

然后在参数中使用:${APP_KEY}${CITY}

3. 添加断言(验证结果)

右键HTTP请求 → 添加 → 断言 → JSON断言JSON路径表达式:$.result.status
期望值:0  (假设0表示成功)

4. 添加聚合报告(性能测试)

右键线程组 → 添加 → 监听器 → 聚合报告

可以查看平均响应时间、吞吐量等。


🎮 实战演练示例

场景1:单个用户测试

线程组:
- 线程数:1
- 循环次数:5执行顺序:
1. 查询北京天气
2. 查询快递信息
3. 重复5次

场景2:并发测试(10个用户)

线程组:
- 线程数:10
- Ramp-Up:5秒
- 循环次数:3模拟10个用户同时查询

📝 测试结果分析

成功响应示例(天气查询):

{"code": "10000","charge": false,"result": {"status": 0,"msg": "ok","result": {"city": "北京","temp": "18℃"}}
}

关键指标检查:

  1. 响应码:200(HTTP成功)
  2. 业务状态码:看API文档定义(如0表示成功)
  3. 响应时间:一般应在3秒内
  4. 返回数据:检查是否正确返回天气/快递信息

⚠️ 常见问题与解决

Q1:返回"appkey无效"

A:检查AppKey是否正确,是否在请求中正确传递。

Q2:返回"请求频率超限"

A:免费的API通常有频率限制,可以:

  • 在JMeter中添加定时器(右键 → 添加 → 定时器)
  • 设置固定定时器,比如每隔2秒请求一次

Q3:中文城市名乱码

A:在HTTP请求中勾选参数编码,或使用URL编码的中文。

Q4:测试结果都是红色(失败)

A:检查:

  1. 网络连接是否正常
  2. API地址是否正确
  3. 参数名是否正确
  4. 是否需要HTTPS证书

🔄 测试流程优化

添加逻辑控制器

右键线程组 → 添加 → 逻辑控制器 → 循环控制器
设置循环次数:10
将HTTP请求拖入循环控制器内

添加CSV数据文件(批量测试)

右键线程组 → 添加 → 配置元件 → CSV数据文件设置
文件名:city.csv
变量名:CITY
文件内容:
北京
上海
广州
深圳

在请求参数中使用:${CITY}


📋 测试脚本保存

保存测试计划

文件 → 保存测试计划为...
建议命名:万维易源API测试.jmx

导出测试结果

查看结果树 → 右键 → 保存为CSV/XML
聚合报告 → 右键 → 保存表格为CSV

🎯 总结要点

1. 准备工作

  • 注册万维易源获取AppKey
  • 查看API文档了解接口参数

2. JMeter配置

  • 创建线程组(模拟用户)
  • 添加HTTP请求(配置API参数)
  • 添加监听器(查看结果)

3. 测试执行

  • 先单个请求测试,确保接口正常
  • 再增加并发用户数,测试性能
  • 检查响应时间和正确性

4. 结果分析

  • 查看返回数据是否正确
  • 检查响应时间是否在可接受范围
  • 统计成功率

✨ 一句话总结

万维易源提供API数据 + JMeter模拟调用 = 完整的接口测试方案

通过这个练习,你可以掌握:

  1. API接口的调用方法
  2. JMeter的基本使用技巧
  3. 接口测试的基本流程
  4. 性能测试的简单实施

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询