Skip to content

Python Libs

Что я использую для ежедневной разработки

Тестирование

  • pytest - базовый фреймворк для тестирования
  • syrupy - снепшот-тестирование
    • полезно когда в тесте генеришь большой джсон/док, и сравниваешь его с эталонным
  • factoryboy - генератор тестовых сущностей
  • freezegun - мок дат
  • pyhamcrest - красивые ассерты
    • dirty-equals - еще вариант, посвежее, от автора pydantic

QA / Lint

  • qodana - линтер от JetBrains - по сути те же проверки ide, но можно запускать на CI и на локалке с красивыми репортами
  • Ruff - оч быстрый линтер
    • быстрее flake8 и уж тем более pylint
  • mypy - чекер тайпингов
    • ничего лучше него нет (pyright робит хуже)
    • хотя и mypy не идеален, часто надо бороться с ним
    • так что внедрять его надо либо со старта, либо очень урезанно, либо вообще не внедрять
  • black - хороший форматтер кода
    • есть плагины для IDE
    • Начиная с версии 2023.2, в PyCharm нативная интеграция с Black