【软件测试基础知识】如何使用fiddler模拟接口服务器

发布 : 软件测试培训      来源:软件测试培训问答

2022-07-21 14:05:42

1、应用场景

在APP测试中,经常出现APP已开发完成而接口代码尚未开发完成的情况,或者APP使用了第三方付费接口,目前暂时没有账号,在这些情况下,你如何完成APP测试呢?很显然在这些情况下,我们必须想办法模拟接口服务器返回接口数据,才能完成我们的APP测试,fiddler为我们提供了模拟接口服务器的功能。

2、案例描述

案例:我们的APP使用了某天气预报接口,其接口描述如下:

接口名称:根据城市名查询天气

接口地址:http://v.juhe.cn/weather/index

返回格式:json/xml

请求方式:get

请求示例:http://v.juhe.cn/weather/index?cityname=%E8%8B%8F%E5%B7%9E&key=您申请的KEY

请求参数说明:

返回数据示例:

  1. {
  2. "resultcode": "200",
  3. "reason": "查询成功!",
  4. "result": {
  5. "sk": { /*当前实况天气*/
  6. "temp": "21", /*当前温度*/
  7. "wind_direction": "西风", /*当前风向*/
  8. "wind_strength": "2级", /*当前风力*/
  9. "humidity": "4%", /*当前湿度*/
  10. "time": "14:25" /*更新时间*/
  11. },
  12. "today": {
  13. "city": "天津",
  14. "date_y": "2014年03月21日",
  15. "week": "星期五",
  16. "temperature": "8℃~20℃", /*今日温度*/
  17. "weather": "晴转霾", /*今日天气*/
  18. "weather_id": { /*天气唯一标识*/
  19. "fa": "00", /*天气标识00:晴*/
  20. "fb": "53" /*天气标识53:霾 如果fa不等于fb,说明是组合天气*/
  21. },
  22. "wind": "西南风微风",
  23. "dressing_index": "较冷", /*穿衣指数*/
  24. "dressing_advice": "建议着大衣、呢外套加毛衣、卫衣等服装。", /*穿衣建议*/
  25. "uv_index": "中等", /*紫外线强度*/
  26. "comfort_index": "",/*舒适度指数*/
  27. "wash_index": "较适宜", /*洗车指数*/
  28. "travel_index": "适宜", /*旅游指数*/
  29. "exercise_index": "较适宜", /*晨练指数*/
  30. "drying_index": ""/*干燥指数*/
  31. },
  32. "future": [ /*未来几天天气*/
  33. {
  34. "temperature": "28℃~36℃",
  35. "weather": "晴转多云",
  36. "weather_id": {
  37. "fa": "00",
  38. "fb": "01"
  39. },
  40. "wind": "南风3-4级",
  41. "week": "星期一",
  42. "date": "20140804"
  43. },
  44. {
  45. "temperature": "28℃~36℃",
  46. "weather": "晴转多云",
  47. "weather_id": {
  48. "fa": "00",
  49. "fb": "01"
  50. },
  51. "wind": "东南风3-4级",
  52. "week": "星期二",
  53. "date": "20140805"
  54. },
  55. {
  56. "temperature": "27℃~35℃",
  57. "weather": "晴转多云",
  58. "weather_id": {
  59. "fa": "00",
  60. "fb": "01"
  61. },
  62. "wind": "东南风3-4级",
  63. "week": "星期三",
  64. "date": "20140806"
  65. },
  66. {
  67. "temperature": "27℃~34℃",
  68. "weather": "多云",
  69. "weather_id": {
  70. "fa": "01",
  71. "fb": "01"
  1. },
  2. "wind": "东南风3-4级",
  3. "week": "星期四",
  4. "date": "20140807"
  5. },
  6. {
  7. "temperature": "27℃~33℃",
  8. "weather": "多云",
  9. "weather_id": {
  10. "fa": "01",
  11. "fb": "01"
  12. },
  13. "wind": "东北风4-5级",
  14. "week": "星期五",
  15. "date": "20140808"
  16. },
  17. {
  18. "temperature": "26℃~33℃",
  19. "weather": "多云",
  20. "weather_id": {
  21. "fa": "01",
  22. "fb": "01"
  23. },
  24. "wind": "北风4-5级",
  25. "week": "星期六",
  26. "date": "20140809"
  27. },
  28. {
  29. "temperature": "26℃~33℃",
  30. "weather": "多云",
  31. "weather_id": {
  32. "fa": "01",
  33. "fb": "01"
  34. },
  35. "wind": "北风4-5级",
  36. "week": "星期日",
  37. "date": "20140810"
  38. }
  39. ]
  40. },
  41. "error_code": 0
  42. }

3、实现过程

上面的案例中,我们需要模拟接口服务器返回天气信息来进行APP测试,具体实现步骤如下:

(1)按照提供的“返回数据示例”格式准备好测试数据,并保存为weather_response.json文件。

(2)打开fiddler,开启自动响应功能,添加并编辑匹配规则,指定响应文件,如下图所示:

(3)在浏览器地址栏中输入 http://v.juhe.cn/weather/index?cityname=北京&key=您申请的KEY 进行效果测试,效果如下图所示:

THE END  

声明:本站稿件版权均属中公教育优就业所有,未经许可不得擅自转载。

领取零基础自学IT资源

涉及方向有Java、Web前端、UI设计、软件测试、python等科目,内容包含学习路线、视频、源码等

点击申请领取资料

点击查看资料详情 

收起 


 相关推荐

问题解答专区
返回顶部