问题现象

=========================================================================================== warnings summary =========================================================================================== 
f:\python3.7\lib\site-packages\urllib3\util\selectors.py:14
  f:\python3.7\lib\site-packages\urllib3\util\selectors.py:14: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3,and in 3.9 it will stop working
    from collections import namedtuple, Mapping

f:\python3.7\lib\site-packages\urllib3\_collections.py:2
  f:\python3.7\lib\site-packages\urllib3\_collections.py:2: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3,and in 3.9 it will stop working
    from collections import Mapping, MutableMapping

pytest警告DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3,and in 3.9 it will stop working

问题分析

大致意思是:弃用警告:从collections中导入ABCs已被弃用,并在python3.8中将停止工作,可使用collections.abc代替它进行使用
然后就各种百度了解,主要看到两种解决办法,做一下简单汇总:
第一种: 在代码文件中用到了 collections 这个模块的报错;
第二种:在代码文件中没有用到 collections 这个模块的报错;

解决方法

  1. 如果有使用这个方法
# from collections import Iterable   ---这是会报警告的用法
from collections.abc import Iterable ---这是不会报警告的用法
  1. 如果根本没用调用这个方法
    那么只能通过pytest的告警过滤了
    创建pytest.ini文件,写入下面内容并保存
[pytest]
addopts = -p no:warnings

运行后,告警消除
pytest警告DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3,and in 3.9 it will stop working

相关文章:

  • 2021-07-16
  • 2021-10-07
  • 2021-08-25
  • 2022-12-23
  • 2021-06-10
  • 2021-11-18
  • 2022-12-23
  • 2022-01-05
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-01-13
  • 2022-12-23
  • 2021-09-25
  • 2021-11-19
相关资源
相似解决方案