How to disable skipping a test in pytest without modifying the code?
Answer a question
I have inherited some code that implements pytest.mark.skipif
for a few tests. Reading through the pytest docs, I am aware that I can add conditions, possibly check for environment variables, or use more advanced features of pytest.mark
to control groups of tests together. Unfortunately nothing in the docs so far seems to solve my problem.
I'm looking to simply turn off any test skipping, but without modifying any source code of the tests. I just want to run pytest in a mode where it does not honor any indicators for test skipping. Does such a solution exist with pytest?
Answers
Create a conftest.py with the following contents:
import pytest
import _pytest.skipping
def pytest_addoption(parser):
parser.addoption(
"--no-skips",
action="store_true",
default=False, help="disable skip marks")
@pytest.hookimpl(tryfirst=True)
def pytest_cmdline_preparse(config, args):
if "--no-skips" not in args:
return
def no_skip(*args, **kwargs):
return
_pytest.skipping.skip = no_skip
the use --no-skip
in command line to run all testcases even if some testcases with pytest.mark.skip
decorator
更多推荐
所有评论(0)