Тест, выполняемый с помощью носовых тестов, завершается с ошибкой ImportError, но работает с командой Python.

StackOverflow https://stackoverflow.com/questions/9429202

Вопрос

При запуске теста с python mycore/tests4extractor.py оно работает.Если запустить тест с помощью nosetests ./mycore/tests4extractor.py это терпит неудачу с ImportError: No module named extractor.я в helpers папка.

Структура проекта:

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

Установка PYTHONPATH на абсолютный путь к helpers и/или helpers/mycore не помогает.

Отвечать

test4extractor.py:

    import mycore
    from extractor import extract

следует изменить на:

    import mycore
    from mycore.extractor import extract

И Python следует запускать с python -mmycore.tests4_strings

Это было полезно?

Решение

Делает tests4extractor.py содержать import extractor?

Потому что mycore это пакет, вам нужно использовать абсолютный импорт:

from mycore import extractor

или относительный импорт:

from . import extractor
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top