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