лучшая практика по настройке Python unittest?

Моя цель - создать репозиторий GitHub с модулем и модульными тестами, которые другие разработчики могут проверить и над которыми могут работать, включая запуск модульных тестов. Этот модуль выполняет манипуляции с PDF-файлами, поэтому мне нужно предоставить несколько образцов PDF-файлов для тестирования, а также пути для входов и выходов. Я поместил файл.ini и несколько примеров PDF-файлов за пределы корня исходного кода. SetUp моего модульного теста имеет один жестко заданный относительный путь к файлу.ini, который содержит все остальные входные данные, необходимые для модульных тестов:

class TestPDF(unittest.TestCase):

    def setUp(self):
        config = configparser.ConfigParser()
        config.read('../../data/tests/test_config.ini')
        self.test_file_path = config['PATHS']['test_file_path']
        # ...create additional config variables...

Эти переменные, такие как self.test_file_path, затем доступны во всех модульных тестах этого класса. Вот моя структура папок:

Что касается конфигурации: это хороший способ передать конфигурацию моим модульным тестам? Это работает нормально, так что это вопрос лучших практик. Я предполагаю, что почти каждый модульный тест должен предоставлять какие-то входные данные, будь то данные файла, URL-адреса, пути, фрагменты SQL, учетные данные, токены и т. Д., Так каково соглашение?

Что касается файлов PDF: я сохранил их как можно меньше, просто для тестирования (200 КБ). Опять же, технически это работает нормально, но как репозитории обычно доставляют такие файлы данных?

0 ответов

Другие вопросы по тегам