pytest: AttributeError: 'Function' object has no attribute 'get_marker'

============= test session starts ===========
platform linux -- Python 3.6.6, pytest-4.0.2, py-1.7.0, pluggy-0.8.0 -- 
plugins: monkeytype-1.0.1, cov-2.6.0

Tests work if I pin pytest to this version. Updating to 4.1.0 breaks with this error:

platform linux -- Python 3.6.6, pytest-4.1.0, py-1.7.0, pluggy-0.8.0 -- 
plugins: monkeytype-1.0.1, cov-2.6.0

...

self = <pytest_cov.plugin.CovPlugin object at 0x7f13154272b0>, item = <Function test_part_compilation[PP]>

    @compat.hookwrapper
    def pytest_runtest_call(self, item):
>       if (item.get_marker('no_cover')
                or 'no_cover' in getattr(item, 'fixturenames', ())):
E               AttributeError: 'Function' object has no attribute 'get_marker'

/home/mbarkhau/miniconda3/envs/pycalver_py36/lib/python3.6/site-packages/pytest_cov/plugin.py:289: AttributeError

I can reproduce the error and provide more information in case it isn’t immediately clear what the issue is.

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Reactions: 6
  • Comments: 21 (10 by maintainers)

Commits related to this issue

Most upvoted comments

UPDATE: I was able to bypass the error by reverting to pytest 3.x:

pip install pytest==3.10.1

NOTE: I’m using anaconda.

I’m using pytest-cov 2.8.1 and still get the error.

Edit: Updating pytest-remotedata==0.3.0 to pytest-remotedata==0.3.2 solved the problem for me. Anaconda dist on Windows 10 but I updated using pip, not conda

cov-2.6.1 should fix this.