首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >InsecureRequestWarning + pytest

InsecureRequestWarning + pytest
EN

Stack Overflow用户
提问于 2019-07-04 05:34:44
回答 2查看 2.6K关注 0票数 10

我仍然有关于pytest摘要的SSL警告。

Python 2.7.5

requests==2.22.0

urllib3==1.25.3

pytest version 4.3.1

这是代码:

代码语言:javascript
复制
import requests
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)

def test_x():
  response = requests.get("https:// ...",
                          verify=False)
  print response.text

输出pytest mytest.py

代码语言:javascript
复制
....    
==================================================== warnings summary ====================================================
prova.py::test_x
  /usr/lib/python2.7/site-packages/urllib3/connectionpool.py:851: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
    InsecureRequestWarning)

-- Docs: https://docs.pytest.org/en/latest/warnings.html
========================================== 1 passed, 1 warnings in 0.30 seconds ==========================================

如何从pytest中删除SSL警告?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-07-04 13:08:04

重新声明注释:您只能通过打开SSL证书验证来删除它。但是,您可以隐藏它(因此仍然发出警告,但没有显示在“警告”部分):

选定测试

通过警告类将pytest.mark.filterwarnings标记应用于测试:

代码语言:javascript
复制
@pytest.mark.filterwarnings('ignore::urllib3.exceptions.InsecureRequestWarning')
def test_example_com():
    requests.get('https://www.example.com', verify=False)

或者通过警告信息:

代码语言:javascript
复制
@pytest.mark.filterwarnings('ignore:Unverified HTTPS request is being made.*')
def test_example_com():
    requests.get('https://www.example.com', verify=False)

( ignore::ignore:中的单个或双冒号之间的区别)。

完整测试套件

filterwarnings中配置pytest.ini,也可以通过警告类:

代码语言:javascript
复制
[pytest]
filterwarnings =
    ignore::urllib3.exceptions.InsecureRequestWarning

或者通过警告信息:

代码语言:javascript
复制
[pytest]
filterwarnings =
    ignore:Unverified HTTPS request is being made.*
票数 15
EN

Stack Overflow用户

发布于 2020-06-29 16:29:05

只想为Django用户提供这个代码片段--将其添加到您的导入中:

代码语言:javascript
复制
import urllib3

然后为文件上的所有测试添加此选项以禁用InsecureRequestWarning:

代码语言:javascript
复制
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56881233

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档