python接口自动化测试 requests库的基础使用

这篇具有很好参考价值的文章主要介绍了python接口自动化测试 requests库的基础使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

简单介绍

Get请求

Post请求

其他类型请求

自定义headers和cookies

SSL 证书验证

响应内容

获取header

获取cookies


简单介绍

requests库简单易用的HTTP库

   

Get请求

格式: requests.get(url) 

注意:若需要传请求参数,可直接在 url 最后的 ? 后面,也可以调用 get() 时多加一个参数 params ,传入请求参数,注意需要是 dict 格式;如下图所示

 1     url = 'http://127.0.0.1:8888/passport/user/login'
 2     param = {
 3         'username': '123',
 4         'password': '321'
 5     }
 6 
 7     """通过params传参"""
 8     res = requests.get(url, params=param)
 9     # {'code': 200, 'msg': 'success', 'password': '321', 'username': '123'}
10     print(res.json())
11 
12     """通过params方式传参,最终发出的url也是一致的"""
13     # http://127.0.0.1:8888/passport/user/login?username=123&password=321
14     print(res.url)
15 
16     """通过url最后加上请求参数列表"""
17     url = 'http://127.0.0.1:8888/passport/user/login?username=123&password=321'
18     res = requests.get(url, verify=False)
19     # {'code': 200, 'msg': 'success', 'password': '321', 'username': '123'}
20     print(res.text)

重点:发送请求赋值的res,可以看成是请求的上下文,既可以获取请求相关参数值,也可以获取响应相关参数值

python接口自动化测试视频教程:2023最新合集Python自动化测试开发框架【全栈/实战/教程】合集精华,学完年薪40W+_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1AF411T7qJ/?spm_id_from=333.999.0.0

         

 文章来源地址https://www.toymoban.com/news/detail-426298.html

Post请求

格式: requests.post(url,data) 

注意:若无请求参数可不传 data ;当传入请求参数时,需要传 dict 格式

 1     url = 'http://127.0.0.1:8888/passport/user/post_login'
 2     data = {
 3         'username': '123',
 4         'password': '321'
 5     }
 6 
 7     """传入请求参数"""
 8     res = requests.post(url, data=data)
 9     # {'code': 200, 'msg': 'success', 'password': '321', 'username': '123'}
10     print(res.json())
11 
12     """查看请求url"""
13     # http://127.0.0.1:8888/passport/user/post_login
14     print(res.url)

其他类型请求

1     r = requests.put('http://httpbin.org/put', data={'key': 'value'}).text
2     r = requests.delete('http://httpbin.org/delete').text
3     r = requests.head('http://httpbin.org/head').text

2023最新合集Python自动化测试开发框架【全栈/实战/教程】合集精华,学完年薪40W+_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1AF411T7qJ/?spm_id_from=333.999.0.0&vd_source=6e2d6c374fd551babe1ac6a5e60c5a75                      

 

自定义headers和cookies

 1     """自定义headers"""
 2     url = 'https://api.github.com/some/endpoint'
 3     headers = {'user-agent': 'my-app/0.0.1'}
 4 
 5     r = requests.get(url, headers=headers)
 6     # {'message': 'Not Found', 'documentation_url': 'https://developer.github.com/v3'}
 7     print(r.json())
 8 
 9     """自定义cookies"""
10     url = 'http://httpbin.org/cookies'
11     cookies = dict(cookies_are='working')
12     cookies2 = {'cookies_are': 'working'}
13 
14     r = requests.get(url, cookies=cookies)
15     # {'cookies': {'cookies_are': 'working'}}
16     print(r.json())

SSL 证书验证

python接口自动化测试 requests库的基础使用

当发送请求如果报以上错误时,可以在请求方法里加多一个字段 verify=False ,就可以解决此问题;此操作是为了免去验证步骤

url = 'https://www.imooc.com'
res = requests.get(url, verify=False)

 

响应内容

注意:当调用 json() 时,确保响应内容是json格式字符串,否则会报错

 1     url = 'http://127.0.0.1:8888/passport/user/login'
 2     param = {
 3         'username': '123',
 4         'password': '321'
 5     }
 6     res = requests.get(url, params=param)
 7     print('请求url: ' + res.url)
 8     print('响应内容 json格式: ' + json.dumps(res.json()))
 9     print('响应内容 字符串格式: ' + res.text)
10     print('响应内容 二进制格式: ' + str(res.content))
11     print('响应码: ' + str(res.status_code))

获取header

注意:headers里面的key是大小写不敏感的

>>> r.headers['Content-Type']
'application/json'

>>> r.headers.get('content-type')
'application/json'

获取cookies

>>> r.cookies['example_cookie_name']
'example_cookie_value'

2023最新合集Python自动化测试开发框架【全栈/实战/教程】合集精华,学完年薪40W+_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1AF411T7qJ/?spm_id_from=333.999.0.0&vd_source=6e2d6c374fd551babe1ac6a5e60c5a75python接口自动化测试 requests库的基础使用

python接口自动化测试 requests库的基础使用 

 

到了这里,关于python接口自动化测试 requests库的基础使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Python+requests+unittest+excel】实现接口自动化测试框架

    一、框架结构:  工程目录 二、Case文件设计 三、基础包 base 3.1 封装get/post请求(runmethon.py) 3.2 封装mock(mock.py) 四、数据操作包 operation_data 4.1 获取excel单元格中的内容(get_data.py)   4.2 获取excel中每个列(data_config.py) 4.3 解决数据依赖(dependent.py ) 五、工具类包 to

    2024年02月15日
    浏览(18)
  • Python+Requests+PyTest+Excel+Allure 接口自动化测试实战

    本文主要介绍了Python+Requess+PyTest+Excel+Allure 接口自动化测试实战,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 Unittest是Python标准库中自带的单元测试框架,Unittest有时候也被称为PyUnit,就像

    2024年02月07日
    浏览(26)
  • 一个简单的接口自动化测试框架:Python+Requests+Pytest+Allure

    project:api_test ——api_keyword ————api_key.py:接口驱动类 ——case ————test_cases.py:测试套件和测试用例 ——report_allure( 无需创建 ):allure报告 ——result( 无需创建 ):测试用例运行结果 ——VAR ————VAR.py:常量类 conftest.py:项目级别fixture main.py:主函数

    2024年02月03日
    浏览(29)
  • Python接口自动化测试-篇1(postman+requests+pytest+allure)

    Python接口自动化测试是一种使用Python编程语言来编写脚本以自动执行针对应用程序接口(APIs)的测试过程。这种测试方法专注于检查系统的不同组件或服务之间的交互,确保它们按照预期规范进行通信,而不涉及用户界面(UI)的验证。 目录 一、接口测试基础 二、工具实现

    2024年04月17日
    浏览(25)
  • 接口自动化测试-Python+Requests+Pytest+YAML+Allure配套撸码(详细)

    接口自动化框架:Python+Requests+Pytest+YAML+Allure 通过 Python+Requests 来发送和处理HTTP协议的请求接口,使用 Pytest 作为测试执行器,使用 YAML 来管理测试数据,使用 Allure 来生成测试报告。 框架结构 api ==== 接口封装层,如封装HTTP接口为Python接口 common ==== 各种工具类 core ==== reques

    2024年02月15日
    浏览(18)
  • (Python)Requests+Pytest+Allure接口自动化测试框架从0到1搭建

    前面,已经学习了如何用SpringBoot写接口以及与Mysql数据库进行交互,具体可查阅下面的这篇博客,今天学习一下基于Python的接口自动化测试框架的搭建,主要包括以下内容:利用request库发送请求,请求数据参数化处理,还涉及到数据库(Mysql+MongDB)方面的交互,包括如何取数

    2024年02月13日
    浏览(30)
  • Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】

            --------UnitTest框架和PyTest框架的简单认识对比与项目实战-------- 定义: Unittest是Python标准库中自带的单元测试框架,Unittest有时候也被称为PyUnit,就像JUnit是Java语言的标准单元测试框架一样,Unittest则是Python语言的标准单元测试框架。 Pytest是Python的另一个第三方单元测

    2024年02月09日
    浏览(20)
  • 接口测试 03 -- 接口自动化思维 & Requests库应用

    接口测试自动化,简单来讲就是功能测试用例脚本化然后执行脚本,产生一份可视化测试报告。不管什么样的测试方式,都是为了验证功能与发现 BUG。那为什么要做接口测试自动化呢? 一句话概括就是为了节省人力成本。 具体来说,包括以下几点: ● 减轻自己工作量,把

    2024年01月23日
    浏览(43)
  • 接口自动化测试之Requests模块详解

    Python中,系统自带的urllib和urllib2都提供了功能强大的HTTP支持,但是API接口确实太难用了。Requests 作为更高一层的封装,在大部分情况下对得起它的slogan——HTTP for Humans。 让我们一起来看看 Requests 这个 HTTP库在我们接口自动化测试中的使用吧 发送请求 在使用 Requests发送网络

    2024年02月08日
    浏览(26)
  • 接口自动化测试:Requests统一请求封装(框架的封装)

    一、为什么要做统一请求封装? 1. 去除很多重复的、冗余的代码; 2.  异常处理和日志监控: 设置统一的公共参数、统一的文件处理、统一的异常处理、统一的日志监控、统一的用例断言等; 3. 跨py文件实现通过一个session自动管理有cookie关联的接口;               

    2024年01月24日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包