Помимо классических тестов, в Python встроено тестирование через документацию. Это довольно необычный способ писать тесты, который иногда применяют для библиотечных функций. В этом уроке мы изучим эту тему подробнее и разберемся, как выглядит такая документация.
Как работает тестирование через документацию
Идея довольно проста. Внутри терминала вызывается функция. Сам вызов и полученный в результате вывод — это и есть тест. Далее он добавляется в документацию функции:
# Внутри example.py определена функция reverse(), которая переворачивает строку
# Флаг -i переключает в интерактивный режим (REPL) после выполнения модуля
python -i example.py
reverse('')
# ''
reverse('Hexlet')
# 'telxeH'
Сделав нужные вызовы, мы просто добавляем их в описание функции:
def reverse(string):
"""Reverse string
>>> reverse('')