属性错误:模块“集合”没有属性“映射”_2024-07-11

问题描述 投票:0回答:1

错误信息:

Traceback (most recent call last):
  File "E:\python\lib\runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "E:\python\lib\runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "E:\python\Scripts\pytest.exe\__main__.py", line 7, in <module>
    sys.exit(console_main())
  File "E:\python\lib\site-packages\_pytest\config\__init__.py", line 206, in console_main
    code = main()
  File "E:\python\lib\site-packages\_pytest\config\__init__.py", line 159, in main
    config = _prepareconfig(args, plugins)
  File "E:\python\lib\site-packages\_pytest\config\__init__.py", line 346, in _prepareconfig
    config = pluginmanager.hook.pytest_cmdline_parse(
  File "E:\python\lib\site-packages\pluggy\_hooks.py", line 513, in __call__
    return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
  File "E:\python\lib\site-packages\pluggy\_manager.py", line 120, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
  File "E:\python\lib\site-packages\pluggy\_callers.py", line 139, in _multicall
    raise exception.with_traceback(exception.__traceback__)
  File "E:\python\lib\site-packages\pluggy\_callers.py", line 122, in _multicall
    teardown.throw(exception)  # type: ignore[union-attr]
  File "E:\python\lib\site-packages\_pytest\helpconfig.py", line 106, in pytest_cmdline_parse
    config = yield
  File "E:\python\lib\site-packages\pluggy\_callers.py", line 103, in _multicall
    res = hook_impl.function(*args)
  File "E:\python\lib\site-packages\_pytest\config\__init__.py", line 1152, in pytest_cmdline_parse
    self.parse(args)
  File "E:\python\lib\site-packages\_pytest\config\__init__.py", line 1501, in parse
    self._preparse(args, addopts=addopts)
  File "E:\python\lib\site-packages\_pytest\config\__init__.py", line 1388, in _preparse
    self.pluginmanager.load_setuptools_entrypoints("pytest11")
  File "E:\python\lib\site-packages\pluggy\_manager.py", line 421, in load_setuptools_entrypoints
    plugin = ep.load()
  File "E:\python\lib\importlib\metadata\__init__.py", line 171, in load
    module = import_module(match.group('module'))
  File "E:\python\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "E:\python\lib\site-packages\_pytest\assertion\rewrite.py", line 178, in exec_module
    exec(co, module.__dict__)
  File "E:\python\lib\site-packages\allure_pytest\plugin.py", line 3, in <module>
    import allure
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "E:\python\lib\site-packages\_pytest\assertion\rewrite.py", line 178, in exec_module
    exec(co, module.__dict__)
  File "E:\python\lib\site-packages\allure\__init__.py", line 1, in <module>
    from allure.pytest_plugin import MASTER_HELPER
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "E:\python\lib\site-packages\_pytest\assertion\rewrite.py", line 178, in exec_module
    exec(co, module.__dict__)
  File "E:\python\lib\site-packages\allure\pytest_plugin.py", line 9, in <module>
    from allure.common import AllureImpl, StepContext
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "E:\python\lib\site-packages\_pytest\assertion\rewrite.py", line 178, in exec_module
    exec(co, module.__dict__)
  File "E:\python\lib\site-packages\allure\common.py", line 19, in <module>
    from allure.structure import Attach, TestStep, TestCase, TestSuite, Failure, Environment, EnvParameter
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "E:\python\lib\site-packages\_pytest\assertion\rewrite.py", line 178, in exec_module
    exec(co, module.__dict__)
  File "E:\python\lib\site-packages\allure\structure.py", line 14, in <module>
    class Attach(xmlfied('attachment',
  File "E:\python\lib\site-packages\allure\rules.py", line 116, in xmlfied
    class MyImpl(namedlist('XMLFied', [(item[0], None) for item in items])):
  File "E:\python\lib\site-packages\namedlist.py", line 398, in namedlist
    fields, defaults = _fields_and_defaults(typename, field_names, default, rename)
  File "E:\python\lib\site-packages\namedlist.py", line 252, in _fields_and_defaults
    if isinstance(field_names, _collections.Mapping):
AttributeError: module 'collections' has no attribute 'Mapping'

我直接运行代码调试,执行正常。 但是当我在终端上使用pytest命令执行时,就出现了这个错误。 当前Python版本是3.12 倾城pytest版本2.13.5 硒版本 4.22 Pytest 版本 8.2.2

我该如何处理这个问题?请各位专家给予指导

python-3.x
1个回答
0
投票

它已移至

collections.abc
,并最终从 python 3.10 中的集合中删除。

>>> from collection import Mapping
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'collection'

>>> from collections.abc import Mapping
>>>

记住下次添加最小可重现示例(MRE)代码!

© www.soinside.com 2019 - 2024. All rights reserved.