Ayrat
Ayrat

Reputation: 1259

A test running with nosetests fails with ImportError, but works with python command

When run a test with python mycore/tests4extractor.py it works. If run the test with nosetests ./mycore/tests4extractor.py it fails with ImportError: No module named extractor. I am in the helpers folder.

The project structure is:

helpers/
    mycore/
        __init__.py
        extractor.py
        tests4extractor.py

Setting PYTHONPATH to the absolute path to helpers and/or helpers/mycore doesn't help.

Answer

tests4extractor.py:

    import mycore
    from extractor import extract

should be changed to:

    import mycore
    from mycore.extractor import extract

And python should be run with python -mmycore.tests4_strings

Upvotes: 1

Views: 1574

Answers (1)

Thomas K
Thomas K

Reputation: 40390

Does tests4extractor.py contain import extractor?

Because mycore is a package, you need to use absolute imports:

from mycore import extractor

or relative imports:

from . import extractor

Upvotes: 2

Related Questions