AI智能
改变未来

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

##问题现象

=========================================================================================== warnings summary ===========================================================================================f:\\python3.7\\lib\\site-packages\\urllib3\\util\\selectors.py:14f:\\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 workingfrom collections import namedtuple, Mappingf:\\python3.7\\lib\\site-packages\\urllib3\\_collections.py:2f:\\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 workingfrom collections import Mapping, MutableMapping

##问题分析大致意思是:弃用警告:从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

运行后,告警消除

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » 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