Специальная, подарочная акция получения доступа к Django4!
Как, я, начал код писать в Python? Смотрите, если уперлись и ничего не получается.
Уберём пере направление на другую страницу, а выведем уведомление, что для пользователя (Сообщение успешно отправлено.) и очистим форму.
!1. Для кого эти видео.Что в описании?Плейлист 41 видео бесплатно, можно понять мой стиль подачи:
Django 4 пишем сайт с нуля.
https://www.youtube.com/playlist?list=PLuZJ9n46uMzXVj9JEjULImuBKRVKKS9ToВ 100 раз быстрее выучите Python с Pytest.
https://www.youtube.com/watch?v=LGr_t3OaJ_o&list=PLuZJ9n46uMzW1oBDysdzhnRVaAF4xdjJd&index=23&t=582sПолучить пожизненный доступ (если ещё нет) к урокам Django 4 + в подарок Python.
1. Система отработки кода. Как научится писать код легко?
Тестирование
!2. Какие знания необходимы, что уже должно быть выполнено:Мы писали две формыJupyter ...все рассказано в видео.!Что делает тест для нас? - соберёт в голове все наши предыдущие знания с формами.!Напишем два параметризованных теста, которые полностью покроют тестирование любых форм.!1.Общий тест формы. Понять смысл.!2. Детальный тест нашей формы.
Давайте научимся писать тесты с параметрами, как будто пользователь заполняет форму. Как работает наша форма - мы можем узнать в тесте.
Научимся писать тесты на pytest для Django.
Обязательно условие - должны быть пройдены уроки по применению тестов в pytest, не должно быть проблем с пониманием и чтением тестов, а так же трассировкой(выводом), тестов.
-
Показал, как не открывая html страницу с формой протестировать форму Django. Мы увидели на практике, что тестирование даёт идеи для разработки, мы сразу правим баги, легко и опираясь не на домыслы. а именно на документацию тестируем поле Джанго и уверенно что все будет работать верно.
#todo используем несколько маркеров параметризации #? date_creation, subject, message, sender, cc_myself @pytest.mark.parametrize( 'date_creation, valid_date', [ # дата today ('2022-02-08', True), # когда дата не сегодняшнее число, сообщение не отправялется. ('2022-02-07', False), #BUG ('', False), (None, False), # ('2022-02-10', False), ] )
Протестируем поле, но будем уже использовать переменные и писать дополнительный код.
Очень важно понять момент, что тестировать нужно не страницу, а опираться на документацию, тогда ошибок точно не будет.
в данном случае мы тестируем форму на свои варианты используя исключения с документации поля CharField():
Error message keys: required, max_length, min_length
< 1 2 3 4 5 6 7 8 9 >