Как стать автором
Обновить

Комментарии 8

Спасибо за подборку инструментов, выглядит гораздо лучше чем баш скрипты для деплоя (;
Cайт отличный, но уже хочется к нему прикрутить свой функционал... Выкладывать исходники не планируете?

🙏🏼 Будет здорово, если поделитесь идеями в группе: https://t.me/+N6hpjx57PPQ5YzAy

Доброго времени суток. Подскажите, а какая была цель создания данного проекта и, разве, не удобнее работать с тасками чернз телеграмм / приложение?

Доброе утро! Цель данного приложения в методе, который применяется. Можете подробнее почитать в первой статье: https://habr.com/ru/post/702668/

Реализовать его ТГ не получится. Приложение надо еще сделать.

В целом годно! Но раз меня призвали:

  • os.path.isfile(dotenv_file) -> dotenv_file.is_file()

  • DEBUG = os.environ.get('DJANGO_DEBUG', default=False) in ['True', 'true', '1', True] - ужасно, лучше юзать либы, которые уже умеют парсить во встроенные типы, например envparse: DEBUG = env.bool('DJANGO_DEBUG', default=False)

  • по тестированию pytest с его fixtures мне больше нравится. Имхо

  • 'default': dj_database_url.config(conn_max_age=600, default="sqlite:///db.sqlite3") - ну не знаю, по мне явное лучше неявного, я б просто env('DATABASE_URL'), дополнительной либы это не стоит

Спасибо!

  1. принял

  2. понял

  3. прям стоит вообще забыть про unittest? Или дело вкуса?

  4. Хм, действительно. Джанго и так понимает url стандартный. Я сперва подумал, что dj_database_url его как-то хитро конвертирует в конфигурацию базы данных.

ну вот. такая туса и без меня.

Я отвечу только на 3. пункт. про unittest.

Мое мнение, что если ты Django-программист, то ты минимум должен знать, что предлагает Django для тестирования. А в джанго выбрана unittests.

А предлагается в django, конечно, много. Например с 3.26 приcутствуют sileniumtestcase (django.tests.selenium), который нифига не документированы тут https://docs.djangoproject.com/en/4.1/topics/testing/tools/, но если ты понял, как это работает, то код тестов получается очень короткий.

Да и в принципе, если понимать всю суть Django TestCase, то тесты получаются опрятнее и короче pytest. Знаю на собственном опыте - прямо сейчас работаю с проектом, который обвешан pytest-ами. Продираясь через эту спагетти-мешанину декораторов я каждый раз думаю, а вот тут используй SimpleTestCase и код сократится... и тп.

Проблема то в том, что слаженной документации по тестированию проектов django нет.Однако есть неподтвержденное устойчивое мнение, что написать "assert что-то-там" - это в разы проще чем self.assertIsTrue("что-то-там"). И все, люди уже готовы "вообще забыть про unittest" потому, что кто-то что-то сказал.

Здесть не дело вкуса. Здесь дело в понимании. В Django не просто так существует мощная платформа для тестирования, проверенная десятилетиями и дорабатываемая регулярно. Она проста и удобна и упрощает создание тестового кода, размеется, если ты потратил время на ее изучение.

И в итоге это всегда твой выбор. Взять и изучить то, что уже написано и протестировано разработчиками Django для разработчиков Django или взять pytest и написать свое и самому. Если ты выбрал второй вариант, то, собственно, зачем тебе Django?

P.s. Про VueJs и Django недавно делал доклад на djangocon 2022. Там столько всего интересного нашел при подготовке доклада, даже не верится. Кстати, тоже с @kesnконсультировался по этому поводу, Alex, спасибо тебе :)

Спасибо за развернутый ответ. Про SeleniumTestCase не слышал.

Про PS — тоже спасибо. Посмотрю!

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории