Как doctest запускает тест-кейсы?

Создал модуль doc-tests_launcher.py в родительской директории проекта. Он импортирует тест-кейсы с документацией к функциям, в которых расписаны локальные Python-сессии.

Я предполагал, что команда doctest.testmod() будет также тестировать и импортированные функции.

Но на выходе получаю:

> python doc-tests_launcher.py -v

Trying:
1
Expecting:
1
ok
1 items had no tests:
__main__
1 items passed all tests:
1 tests in __main__.test_this
1 tests in 2 items.
1 passed and 0 failed.
Test passed.

Т.е. подскажите, пожалуйста как заставить doctest тестировать импортированные функции c предварительно написанными в документации к ним тестах.

doc-tests_launcher.py:

if __name__ == '__main__':

    try:

        #  Импортирование тест-кейсов.
        from tests.doc_string_test_ import *
        import doctest

        print(dir()) #  ['Room', '__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'doctest', 'test_please]


    except Exception as e:
        print(e)


    def test_this():

        """
        >>> 1
        1
        """


    doctest.testmod()


tests/doc_string_test_.py:

# Запуск тестов через лаунчер
if __name__ == 'tests.doc_string_test_':

    try:

        from modules.game import Room
        import doctest

    except Exception as e:
        print(e)

    def test_please():

        """
        >>> 2
        2

        """
  • Вопрос задан
  • 36 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы