Модульное тестирование python пакета, который содержит расширение - PullRequest
0 голосов
/ 30 апреля 2020

Я пытаюсь запустить Python модульный тест в пакете, который содержит модуль расширения. Это происходит так:

+ python -m unittest discover
E
======================================================================
ERROR: test.test (unittest.loader._FailedTest)
----------------------------------------------------------------------
ImportError: Failed to import test module: test.test
Traceback (most recent call last):
  ...
  File "test/test.py", line 1, in <module>
    from pymodule import Cls
  File "pymodule/__init__.py", line 1, in <module>
    from pymodule_ext import ClsExt
ImportError: cannot import name 'ClsExt'

Это потому, что setuptools помещает модуль расширения в build/lib.linux-x86_64-3.6/, поэтому мне нужно вручную настроить PYTHONPATH, чтобы он работал. Это не особенно приятно - есть ли способ запустить модульные тесты с автоматическим определением модулей расширения?

...