我仍然有关于pytest摘要的SSL警告。
Python 2.7.5
requests==2.22.0
urllib3==1.25.3
pytest version 4.3.1
这是代码:
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
....
==================================================== 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警告?
发布于 2019-07-04 13:08:04
重新声明注释:您只能通过打开SSL证书验证来删除它。但是,您可以隐藏它(因此仍然发出警告,但没有显示在“警告”部分):
选定测试
通过警告类将pytest.mark.filterwarnings标记应用于测试:
@pytest.mark.filterwarnings('ignore::urllib3.exceptions.InsecureRequestWarning')
def test_example_com():
requests.get('https://www.example.com', verify=False)或者通过警告信息:
@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,也可以通过警告类:
[pytest]
filterwarnings =
ignore::urllib3.exceptions.InsecureRequestWarning或者通过警告信息:
[pytest]
filterwarnings =
ignore:Unverified HTTPS request is being made.*发布于 2020-06-29 16:29:05
只想为Django用户提供这个代码片段--将其添加到您的导入中:
import urllib3然后为文件上的所有测试添加此选项以禁用InsecureRequestWarning:
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)https://stackoverflow.com/questions/56881233
复制相似问题