用python实现接口测试(三、天气查询接口)

简介: 一般来说做接口测试,我们应当手上能够拿到后台开发提供的接口文档,但是我今天给大家找的是网络上的案例,学习的同学可以一起看看。一、天气查询接口(www.webxml.

一般来说做接口测试,我们应当手上能够拿到后台开发提供的接口文档,但是我今天给大家找的是网络上的案例,学习的同学可以一起看看。

一、天气查询接口(www.webxml.com.cn/WebServices/WeatherWebService.asmx

img_6477c7fa395ce046ae262be9df8a0e0b.png
天气查询接口页面

二、在天气查询接口页面点击“getSupportCity”,字面意思去理解获取支持的城市,显而易见是一个查看系统支持哪些城市的接口方法,在编辑框输入城市或地区名称,如输入“广东”,点击调用,会弹出广东省城市信息列表,如下图

img_82c2930473f0b3dfb0a70da5bc78a7f5.png
城市列表信息

三、代码解析

img_c42fb6594c45b7346d9b4d542ba1c0a0.png
代码

看到这样的结果表示我们的接口请求成功了,并获得了支持的城市名称城市,城市后面括号里是对应的城市代码。回到我们的脚本中看看代码的实现。import urllib2表示我们在python中导入了urllib2这个包,当然后面就是通过urllib2进行的接口访问,具体的执行也很简单3行。第一行拼接我们需要访问的接口地址,那么我们来看看接口地址怎么得到的呢?回到我们的网页里找到GET里的介绍:

GET /WebServices/WeatherWebService.asmx/getSupportCity?byProvinceName=string HTTP/1.1

Host: www.webxml.com.cn

自然我们的url拼接起来就是host+get里边的内容,而‘?byProvinceName=string’后面的string是要我们传递的参数,这里的传递参数要区别一下post传递参数,这里是直接在网址里去传,一般是‘?’后面就是参数了。最后的string就是具体我们要传的内容,比如我们要查询是不是支持北京这个城市,就把string替换成北京。当然我们的脚本里是什么都没传,也就是表示传的是个空值,在接口说明里提到了这样的话:"输入参数:byProvinceName = 指定的洲或国内的省份,若为ALL或空则表示返回全部城市;返回数据:一个一维字符串数组 String(),结构为:城市名称(城市代码)。"如果我们传递的是ALL或是空的话是返回全部的城市。那么我们如果要传递一个具体的城市名称呢?比如我所在的西安,我们要这样写,借鉴网上网友toppoo所写即可

四、周公解梦接口(www.gpsso.com/WebService/Dream/Dream.asmx

img_d54a1f9a6cc9e5002841b3e186902dee.png
周公解梦接口request页面
img_e8dae661e8dd9098700a0af9296ed49c.png
周公解梦接口response页面

具体实现代码:

url='http://www.webxml.com.cn/WebServices/WeatherWebService.asmx/getSupportCity?byProvinceName='+u'广东'.encode('utf-8')

有兴趣的童鞋可以自己玩玩

目录
相关文章
|
16小时前
|
存储 人工智能 测试技术
python自动化测试实战 —— CSDN的Web页面自动化测试
python自动化测试实战 —— CSDN的Web页面自动化测试
5 0
|
21小时前
|
Web App开发 设计模式 测试技术
python自动化测试实战 —— 自动化测试框架的实例
python自动化测试实战 —— 自动化测试框架的实例
4 0
|
21小时前
|
监控 数据可视化 IDE
python自动化测试实战 —— 单元测试框架
python自动化测试实战 —— 单元测试框架
8 2
|
21小时前
|
Web App开发 JavaScript 测试技术
python自动化测试实战 —— WebDriver API的使用
python自动化测试实战 —— WebDriver API的使用
6 1
|
21小时前
|
Web App开发 测试技术 Python
【如何学习python自动化测试】—— 浏览器驱动的安装 以及 如何更新driver
【如何学习python自动化测试】—— 浏览器驱动的安装 以及 如何更新driver
6 0
|
21小时前
|
测试技术 BI Python
【如何学习Python自动化测试】—— HTMLTestRunner 生成测试报告
【如何学习Python自动化测试】—— HTMLTestRunner 生成测试报告
5 0
|
21小时前
|
Java 测试技术 数据库连接
【如何学习Python自动化测试】—— Python 的 unittest 框架
【如何学习Python自动化测试】—— Python 的 unittest 框架
4 0
|
21小时前
|
存储 网络协议 测试技术
【如何学习Python自动化测试】—— Cookie 处理
【如何学习Python自动化测试】—— Cookie 处理
7 1
|
21小时前
|
Web App开发 JavaScript 测试技术
【如何学习Python自动化测试】—— 警告框处理
【如何学习Python自动化测试】—— 警告框处理
6 0
|
21小时前
|
测试技术 Python Windows
【如何学习Python自动化测试】—— 多层窗口定位
【如何学习Python自动化测试】—— 多层窗口定位
8 1