python接口自动化实例,python 请求接口

  python接口自动化实例,python 请求接口

  本文重点介绍如何通过python编码实现我们的接口测试,以及如何通过Pycharm的实际应用编写一个简单的接口测试。有兴趣的可以看看。

  00-1010使用Python发送请求Python如何发送请求配置请求库Skyline数据-空气质量接口使用请求发送查询空气质量接口请求如前所述,如果想做更好的接口测试,就要利用自己的代码基础和代码优势。因此,本章将不介绍商业和通用的接口测试工具,重点介绍如何通过python编码实现我们的接口测试,并通过Pycharm的实际应用编写一个简单的接口测试。

  

目录

  Python3.x(这里我用的是Python3.x版)从写这个Python全栈系列开始就一直在用。其实python 3本身就有一个可以实现发送请求的模块:

  http.clienturllib.request

  

使用 Python 发送 请求

  以上两者都可以发送http请求,也就是说,它们可以帮助我们完成接口测试。但相对来说,它们更倾向于底层,需要更多的定义,所以用上面的比较比较麻烦;

  在实际工作中,第三方库资源使用较多。你为什么选择使用resuests?那是因为它经过了二次集成和二次封装,可以让我们更方便的发送请求。它支持编码、解码、会话保持、长链接、加载头等等。

  这也是我们使用Python进行接口测试的首选方式。接下来,学习如何安装和使用请求库。

  

Python 发送请求的方式

  实际上,安装请求库非常简单。您可以在终端中直接执行pip安装请求,如下图所示:

  也可以通过设置中心来安装。在Windows系统上,选择文件-设置.而在Mac系统上,你选择PyCharm - Preferences.如下图所示:

  如果安装失败,或安装超时,您可以更改国内源地址,或考虑薛蝌王上。

  

requests 库的配置

  你可以从天际数据网站找到一个开放的空气质量接口,通过这个接口可以免费查询全国各城市的空气质量。

  API详细信息如下:

  地址:http://web.juhe.cn/environment/air/cityair

  * *返回格式:**json

  * *请求方法:**get

  请求示例:http://web.juhe.cn/environment/air/cityair?市=城市名称关键字=您申请的APPKEY值。

  请求参数描述:

  参数是必需的。必填项类型表示cityyesstring城市名称的中文名称或拼音,如Shanghai或shanghaikeyyesstringAPP key(注册后申请使用该界面并自动生成一个密钥)。

  返回参数描述:

  名称描述citynowJSONObject当前城市空气质量最新结果lastTwoWeeksJSONObject最近几周(4周28天)的空气质量数据lastMoniDataJSONObject中各监测点的数据,如果字段返回—,则可以

  能是该监测点未监测这项数据或者有延迟

  

  

利用 requests 发送查询 空气质量接口 请求

  实现发送请求的三步:

  1、组装请求 (包含 url 、请求的参数、请求的数据、 headers、cookies等等)

  2、发送请求,获取响应

  3、解析响应、获取到想要的文本

  代码示例如下:

  

# coding:utf-8

  import requests

  天行空气质量接口:

   get:http://web.juhe.cn/environment/air/cityair?city=城市名称&key=您申请的APPKEY值

  url = "http://web.juhe.cn/environment/air/cityair?city=shanghai&key=98a470ea50853d3e698b2dfea09ae079" # 定义url

  result = requests.get(url) # 使用 requests 包的 get 方法获取响应结果

  print(result.text) # 打印输出 result 的文字解析

  

  运行结果如下:

  

  url 还支持 param 等一些信息,所以我们在组装url的时候,还可以不用像上图中那样直接去定义;可以单独定义一个 param ,以字典的形式写入我们要传入的内容。代码示例如下:

  PS:"param" 就是 get 请求方法的 "url" 问号后面的内容,示例:"http://web.juhe.cn/environment/air/cityair?city=城市名称&key=您申请的APPKEY值"

  

# coding:utf-8

  import requests

  天行空气质量接口:

   get:http://web.juhe.cn/environment/air/cityair?city=城市名称&key=您申请的APPKEY值

  # url = "http://web.juhe.cn/environment/air/cityair?city=shanghai&key=98a470ea50853d3e698b2dfea09ae079"

  url = "http://web.juhe.cn/environment/air/cityair" # 定义url

  param = {"key": "98a470ea50853d3e698b2dfea09ae079", "city": "shanghai"} # 定义param

  result = requests.get(url=url, params=param) # 使用 requests 包的 get 方法获取响应结果

  print(result.text) # 打印输出 result 的文字解析

  

  运行结果如下:

  

  接下来再尝试一下通过 psot 方法,运行的结果会怎么样。

  代码示例如下:

  

# coding:utf-8

  import requests

  天行空气质量接口:

   get:http://web.juhe.cn/environment/air/cityair?city=城市名称&key=您申请的APPKEY值

  # url = "http://web.juhe.cn/environment/air/cityair?city=shanghai&key=98a470ea50853d3e698b2dfea09ae079"

  url = "http://web.juhe.cn/environment/air/cityair" # 定义url

  # param = {"key": "98a470ea50853d3e698b2dfea09ae079", "city": "shanghai"} # "param" 就是 get 请求方法的 "url" 问号后面的内容

  data = {"key": "98a470ea50853d3e698b2dfea09ae079", "city": "shanghai"} # data 的内容才是 post 方法里需要传入的参数

  # result = requests.get(url=url, params=param)

  result = requests.post(url=url, data=data) # 使用 requests 包的 post 方法获取响应结果

  print(result.text) # 打印输出 result 的文字解析

  

  运行结果如下:

  

  这里会发现结果与 get 方法是一致的,其实想要测试个简单的接口其实一点都不复杂… 对不对? 再接下来就准备开始一套完整的测试自动化测试的实现吧

  以上就是Python自动化实战之接口请求的实现的详细内容,更多关于Python接口请求的资料请关注盛行IT软件开发工作室其它相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: