python - how to test the same function from various modules using pytest -
i run test function different modules (in 1 module define function calls c++ code , in other module have same function calls different code). way using py.test?
you can use metafunc , create conftest.py
file pytest_addoption
, pytest_generate_tests
functions:
def pytest_addoption(parser): parser.addoption("--libname", action="append", default=[], help="name of tested library") def pytest_generate_tests(metafunc): if 'libname' in metafunc.fixturenames: metafunc.parametrize("libname", metafunc.config.option.libname)
and in function in tests.py
file can use importlib , ask libname:
def test_import(libname): import importlib tested_library = importlib.import_module(libname) .......
now, running test should provide name of module want test: py.test tests.py --libname=your_name1
(you can add --libname=your_name2
)
Comments
Post a Comment