Aleksei Koledachkin | AQA
Aleksei Koledachkin | AQA
  • 77
  • 285 510
ЧТО ТАКОЕ SESSION В REQUESTS # Урок 5 - REQUESTS (Курс для AQA)
🚀 КУРС ПО АВТОМАТИЗАЦИИ ТЕСТИРОВАНИЯ НА PYTHON: qa-proka4.ru/
🧑‍💻 Мой Telegram канал для QA: t.me/qa_proka4
Апишка: httpbin.org
Таймкоды для удобства 🙏
___________________________________________________
00:00 - Введение
00:05 - Курс по автоматизации
00:27 - Запросы без session
02:09 - Работа с session
03:55 - Заключение
-Описание видео:
Добро пожаловать на бесплатный курс по Requests для автоматизаторов, данный урок посвящен работе с Session в запросах в библиотеке requests!
-Предусловие:
Курс создан для тех людей, кто имеет базовое представление о том, что такое API и REST )
Переглядів: 482

Відео

РАБОТА С API-МОКАМИ ДЛЯ АВТОМАТИЗАТОРА НА PYTHON
Переглядів 1 тис.2 місяці тому
🧑‍💻 Мой Telegram канал для QA: t.me/qa_proka4 Курс по паттернам веб-автоматизации: qa-proka4.ru/patterns Курс по Selenium: stepik.org/course/188355 Курс по ручному тестированию: stepik.org/course/211934 Таймкоды для удобства 🙏 00:00 - Введение 00:08 - Теория 00:47 - Установка requests-mock 01:22 - Первый мок (GET) 05:04 - Мокаем POST-запрос 07:09 - Мок задержки от сервера 09:06 - Мок webhook-ув...
PAGE OBJECT MODEL | АВТОРСКИЙ КУРС ПО ПАТТЕРНАМ ВЕБ-АВТОМАТИЗАЦИИ
Переглядів 6 тис.4 місяці тому
Данный курс является моей авторской разработкой с наличием действительно эксклюзивных фишек) Курс платный, но по цене доступный всем! Программа курса, а так же вся подробная информация доступна на сайте: qa-proka4.ru/patterns ➡️Что это за курс: Меня часто спрашивали о паттернах и я решил сделать максимально качественный курс в записи, чтобы он был доступен в любое время! На данному курсе вы изу...
РАБОТА С PUT и PATCH ЗАПРОСАМИ # Урок 4 - REQUESTS (Курс для AQA)
Переглядів 8546 місяців тому
🧑‍💻 Мой Telegram канал для QA: t.me/qa_proka4 Апишка: jsonplaceholder.typicode.com/ Таймкоды для удобства 🙏 00:00 - Введение 00:07 - Вспоминаем теорию 00:56 - Работа с PUT-запросом 03:22 - Работа с PATCH-запросм 04:12 - Заключение -Описание видео: Добро пожаловать на бесплатный курс по Requests для автоматизаторов, данный урок посвящен работе с PUT и PATCH запросами в библиотеке requests! -Пред...
РАСШИРЕНИЯ БРАУЗЕРА # Урок 24 - SELENIUM (Полный курс)
Переглядів 1,4 тис.6 місяців тому
Урок на Stepik: stepik.org/lesson/1366598/step/1?unit=1382605 Мой телеграмм канал: t.me/qa_proka4 Сайт с расширениями: www.crx4chrome.com/extensions/ohahllgiabjaoigichmmfljhkcfikeof/ P.S. Таймкоды для удобства 🙏 00:00 - Вступление 00:04 - Проблематика 00:24 - Скачивание расширение и подготовка 02:15 - Подключаем расширение -Описание видео: Добро пожаловать на бесплатный курс по Selenium, в данн...
QA PLAYGROUND - ПЕРВАЯ В МИРЕ ПЛАТФОРМА ДЛЯ QA ИНЖЕНЕРОВ | ОБЗОР
Переглядів 4,9 тис.7 місяців тому
🧑‍💻 Мой Telegram канал: t.me/qa_proka4 🧑‍💻 Мой инстаграмм: akoledachkin 🚀 Добро пожаловать, c нетерпением ждем встречи с вами на qa-playground.com/ 👉Наш телеграмм канал: t.me/qaplayground 👉Наш Linkedin: www.linkedin.com/company/qa-playground Таймкоды для удобства 🙏 00:00 - Введение 00:07 - Предистория 00:24 - Миссия платформы 00:43 - О фичах платформы 03:27 - Что внутри? 04:05 - ...
ФИШКИ ДЛЯ QA AUTOMATION | РАЗЛОЖЕНИЕ СТРАНИЦЫ НА СЛОИ + КОМАНДНАЯ СТРОКА В DEVTOOLS
Переглядів 6 тис.7 місяців тому
🧑‍💻 Мой Telegram канал: t.me/qa_proka4 🧑‍💻 Мой инстаграмм: akoledachkin Таймкоды для удобства 🙏 00:00 - Введение 00:11 - Проблематика 00:54 - Разложение на слои command line 03:09 - Разложение на слои остановка исполнения JS-кода 05:07 - Заключение Безумно частая проблема, это перекрытие элементов и невозможность взаимодействия с ними. Часто такая ситуация ставит в ступор, но посл...
РАБОТА С POST-ЗАПРОСОМ # Урок 3 - REQUESTS (Курс для AQA)
Переглядів 8877 місяців тому
РАБОТА С POST-ЗАПРОСОМ # Урок 3 - REQUESTS (Курс для AQA)
РАБОТА С GET-ЗАПРОСОМ # Урок 2 - REQUESTS (Курс для AQA)
Переглядів 1,1 тис.8 місяців тому
РАБОТА С GET-ЗАПРОСОМ # Урок 2 - REQUESTS (Курс для AQA)
ВВЕДЕНИЕ В БИБЛИОТЕКУ REQUESTS # Урок 1 - REQUESTS (Курс для AQA)
Переглядів 1,5 тис.9 місяців тому
ВВЕДЕНИЕ В БИБЛИОТЕКУ REQUESTS # Урок 1 - REQUESTS (Курс для AQA)
ПОСТРОЕНИЕ ПРОЦЕССА АВТОМАТИЗАЦИИ ТЕСТИРОВАНИЯ ДЛЯ REST API С 0 ДО CI/CD ЗА 1.5 ЧАСА НА PYTHON
Переглядів 13 тис.9 місяців тому
ПОСТРОЕНИЕ ПРОЦЕССА АВТОМАТИЗАЦИИ ТЕСТИРОВАНИЯ ДЛЯ REST API С 0 ДО CI/CD ЗА 1.5 ЧАСА НА PYTHON
ДЕШИФРАЦИЯ QR-КОДОВ # КЕЙС №3 (КОДИМ КЕЙСЫ)
Переглядів 48910 місяців тому
ДЕШИФРАЦИЯ QR-КОДОВ # КЕЙС №3 (КОДИМ КЕЙСЫ)
ИНТЕГРАЦИЯ С БАЗАМИ ДАННЫХ В АВТОМАТИЗАЦИИ НА ПРИМЕРЕ API-ТЕСТА # КЕЙС №2 (КОДИМ КЕЙСЫ)
Переглядів 1,2 тис.11 місяців тому
ИНТЕГРАЦИЯ С БАЗАМИ ДАННЫХ В АВТОМАТИЗАЦИИ НА ПРИМЕРЕ API-ТЕСТА # КЕЙС №2 (КОДИМ КЕЙСЫ)
НАСКОЛЬКО МЫ УЯЗВИМЫ В СЕТИ?
Переглядів 47511 місяців тому
НАСКОЛЬКО МЫ УЯЗВИМЫ В СЕТИ?
СКАЧИВАНИЕ И ВАЛИДАЦИЯ ДАННЫХ CSV-ФАЙЛОВ # КЕЙС №1 (КОДИМ КЕЙСЫ)
Переглядів 82111 місяців тому
СКАЧИВАНИЕ И ВАЛИДАЦИЯ ДАННЫХ CSV-ФАЙЛОВ # КЕЙС №1 (КОДИМ КЕЙСЫ)
О НОВОМ ФОРМАТЕ - "КОДИМ КЕЙСЫ"
Переглядів 56311 місяців тому
О НОВОМ ФОРМАТЕ - "КОДИМ КЕЙСЫ"
ИСПОЛЬЗОВАНИЕ JAVASCRIPT И СКРОЛЛИНГ # Урок 23 - SELENIUM (Полный курс)
Переглядів 2 тис.Рік тому
ИСПОЛЬЗОВАНИЕ JAVASCRIPT И СКРОЛЛИНГ # Урок 23 - SELENIUM (Полный курс)
ЦЕПОЧКА ДЕЙСТВИЙ. ЧАСТЬ 2 # Урок 22 - SELENIUM (Полный курс)
Переглядів 1,8 тис.Рік тому
ЦЕПОЧКА ДЕЙСТВИЙ. ЧАСТЬ 2 # Урок 22 - SELENIUM (Полный курс)
ЦЕПОЧКА ДЕЙСТВИЙ. ЧАСТЬ 1 # Урок 21 - SELENIUM (Полный курс)
Переглядів 2,4 тис.Рік тому
ЦЕПОЧКА ДЕЙСТВИЙ. ЧАСТЬ 1 # Урок 21 - SELENIUM (Полный курс)
РАБОТА С IFRAMES # Урок 20 - SELENIUM (Полный курс)
Переглядів 2,5 тис.Рік тому
РАБОТА С IFRAMES # Урок 20 - SELENIUM (Полный курс)
ПОСТРОЕНИЕ ПРОЦЕССА АВТОМАТИЗАЦИИ ТЕСТИРОВАНИЯ С 0 ДО CI/CD ЗА 1.5 ЧАСА НА PYTHON
Переглядів 21 тис.Рік тому
ПОСТРОЕНИЕ ПРОЦЕССА АВТОМАТИЗАЦИИ ТЕСТИРОВАНИЯ С 0 ДО CI/CD ЗА 1.5 ЧАСА НА PYTHON
РЕАЛИЗАЦИЯ РАБОТЫ НЕСКОЛЬКИХ ПОЛЬЗОВАТЕЛЕЙ # Урок 19 - SELENIUM (Полный курс)
Переглядів 1,8 тис.Рік тому
РЕАЛИЗАЦИЯ РАБОТЫ НЕСКОЛЬКИХ ПОЛЬЗОВАТЕЛЕЙ # Урок 19 - SELENIUM (Полный курс)
РАБОТА С ОКНАМИ И ВКЛАДКАМИ # Урок 18 - SELENIUM (Полный курс)
Переглядів 2,9 тис.Рік тому
РАБОТА С ОКНАМИ И ВКЛАДКАМИ # Урок 18 - SELENIUM (Полный курс)
РАБОТА С PROXY-SERVER # Урок 17 - SELENIUM (Полный курс)
Переглядів 2,4 тис.Рік тому
РАБОТА С PROXY-SERVER # Урок 17 - SELENIUM (Полный курс)
РАБОТА С DROPDOWN, MULTISELECT И КЛАВИАТУРОЙ # Урок 16 - SELENIUM (Полный курс)
Переглядів 3,5 тис.Рік тому
РАБОТА С DROPDOWN, MULTISELECT И КЛАВИАТУРОЙ # Урок 16 - SELENIUM (Полный курс)
РАБОТА С ЧЕКБОКСАМИ И РАДИО-КНОПКАМИ # Урок 15 - SELENIUM (Полный курс)
Переглядів 3,5 тис.Рік тому
РАБОТА С ЧЕКБОКСАМИ И РАДИО-КНОПКАМИ # Урок 15 - SELENIUM (Полный курс)
РАБОТА С COOKIES # Урок 14 - SELENIUM (Полный курс)
Переглядів 5 тис.Рік тому
РАБОТА С COOKIES # Урок 14 - SELENIUM (Полный курс)
РАБОТА С ALERTS # Урок 13 - SELENIUM (Полный курс)
Переглядів 3,1 тис.Рік тому
РАБОТА С ALERTS # Урок 13 - SELENIUM (Полный курс)
СКРИНШОТЫ + УПРАВЛЕНИЕ WEBDRIVER-МОДОМ И USER-AGENT # Урок 12 - SELENIUM (Полный курс)
Переглядів 3,9 тис.Рік тому
СКРИНШОТЫ УПРАВЛЕНИЕ WEBDRIVER-МОДОМ И USER-AGENT # Урок 12 - SELENIUM (Полный курс)
ЯВНЫЕ И НЕЯВНЫЕ ОЖИДАНИЯ # Урок 11 - SELENIUM (Полный курс)
Переглядів 7 тис.Рік тому
ЯВНЫЕ И НЕЯВНЫЕ ОЖИДАНИЯ # Урок 11 - SELENIUM (Полный курс)

КОМЕНТАРІ

  • @timurdimukhametov3266
    @timurdimukhametov3266 3 дні тому

    Чел ты лучший!

  • @redazaki297
    @redazaki297 11 днів тому

    Огонь! Спасибо!

  • @ЕвгенийСеменов-н6н

    Спасибо за интересный урок!!!скажите, почему браузер долго появляется после запуска run, примерно сек 10. Комп новый вроде) спасибо.

  • @АристархРоссолимо

    спасибо за курс но ты говоришь что хочешь что бы люди понимали как все это работает но в следующих видео даже не объясняешь что такое гет запрос. просто, мы посылаем гет запрос. а что это, с чем едят и т.д. понимания не вносишь

    • @РоманБабаев-г8э
      @РоманБабаев-г8э 3 дні тому

      курс про QA, если ты идешь в автоматизацию, то хотя бы базу(виды запросов, что приходит, что уходит) должен знать

  • @klimtro
    @klimtro 13 днів тому

    Алексей, это просто бомба. Спасибо.

  • @EdgarAsiryan
    @EdgarAsiryan 13 днів тому

    8:48 "ТЫЩ"

  • @lianagasparyan4473
    @lianagasparyan4473 15 днів тому

    Super course

  • @BigBoss-kj7oj
    @BigBoss-kj7oj 16 днів тому

    Топ жду еще видео

  • @igora6367
    @igora6367 17 днів тому

    Круто! Спасибо! Можно экран с IDE побольше? А видео с самим собой уменьшить и наложить поверх IDE где-нибудь в углу На ноуте 15" не очень удобно смотреть

  • @radikgalliamov
    @radikgalliamov 17 днів тому

    Можно ли записаться на курс только на часть ci/cd для автотестов?

    • @qa-proka4
      @qa-proka4 17 днів тому

      К сожалению нет, так как курс будет в live-формате

  • @AlexSvyatogor
    @AlexSvyatogor 18 днів тому

    1600 бачей за курс это сильно...

    • @sardor_abdullaev
      @sardor_abdullaev 17 днів тому

      Есть рассрочка, + в процессе обучения успеешь выйти в плюс. Но со стороны качества обучения, стоит каждой копейки

    • @AlexSvyatogor
      @AlexSvyatogor 17 днів тому

      @@sardor_abdullaev качество с точки зрения информативности такое же как на этом канале? Если да, то у вас неверное представление о качестве.

    • @sardor_abdullaev
      @sardor_abdullaev 17 днів тому

      @@AlexSvyatogor здесь сильно меньше инфы

    • @РоманБабаев-г8э
      @РоманБабаев-г8э 3 дні тому

      @@sardor_abdullaev как это ты в процессе обучения выйдешь в плюс?))) Тебе автор курса начнет платить во время прохождения курса?

  • @Programmer91
    @Programmer91 18 днів тому

    С бородой тебе лучше)

  • @qa-proka4
    @qa-proka4 18 днів тому

    Предвосхищая вопросы: Для автодополнения у меня включён “GitHub Copilot”

  • @CZINKERR
    @CZINKERR 18 днів тому

    "from webdriver_manager.chrome import ChromeDriverManager" выдает ошибку. С чем это может быть связанно, помогите пожалуйста.

    • @Лука-г6ц
      @Лука-г6ц 12 днів тому

      та же тема, мб обновили библиотеку

  • @СергейИгонин-п3п
    @СергейИгонин-п3п 18 днів тому

    Алексей, планируешь ли ты в будущем продавать свои отдельные видео-курсы по различным темам автоматизации? С удовольствием бы их приобретал и неспеша проходил бы в своем темпе. Просто полный курс обучения у тебя не всем по карману и довольно долгий. Да и набор раз в пятилетку)

  • @mrVetkins
    @mrVetkins 21 день тому

    Спасибо за уроки. Я иногда не понимаю, какие слова/переменные и тд зарезервированы, а какие нет. Особенно когда что-то с большой буквы, что-то с маленькой... Если можно писать названия так, чтобы не путаться, было бы круто, а то получается, что сервис=Сервис=Service=service... и хрен поймешь что из этого переменная названная из головы, а что зарезервированное слово. Может так лучше? chrome_service = Service(executable_path=ChromeDriverManager().install()) driver = webdriver.Chrome(service=chrome_service) Или я чего-то не догоняю с этими сервисами...

  • @BigBoss-kj7oj
    @BigBoss-kj7oj 24 дні тому

    Так чотко и подробно еще никто не обяснял

  • @BigBoss-kj7oj
    @BigBoss-kj7oj 24 дні тому

    я просто приисполнился как подробно обясняеш еще бы по больше таких видео. Я конешно не тестер но мне твои видео помогают для автоматизации действий на разных сайтах когда у меня будет 1000 акаунтов сто пудов надо поднять на этом канале актив а то это не дело. а пока что поставлю лайк и подписку на и коментарий на разных видио

  • @BigBoss-kj7oj
    @BigBoss-kj7oj 25 днів тому

    АХЕРЕНО ТОП ПРОДОЛЖАЙ В ТАКОМ ЖЕ ДУХЕ ОЧЕНЬ ПОДРОБНО ОБЯСНЯЕШ)

  • @evgeniypalamarchuk8543
    @evgeniypalamarchuk8543 25 днів тому

    Вот что ещё можно чтобы точно удалить. Вводим сочетание клавиш контроля + а и следом новую дату. Можно не вводить бэкспэцс так как текст замениться автоматически.

  • @BigBoss-kj7oj
    @BigBoss-kj7oj 25 днів тому

    УРА НАКОНЕЦ ЕЩЕ ДЕЛАЙ ПЖ ПЖПЖПЖПЖПЖ

  • @BigBoss-kj7oj
    @BigBoss-kj7oj 25 днів тому

    КРУТО ЕЩЕ ЕЩЕ ПОЖАЛУЙСТА!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

  • @teamexploringmotor7894
    @teamexploringmotor7894 25 днів тому

    Интересно!!

  • @teamexploringmotor7894
    @teamexploringmotor7894 25 днів тому

    Спасибо

  • @igora6367
    @igora6367 25 днів тому

    Класс!

  • @igora6367
    @igora6367 25 днів тому

    Интересно

  • @kasheed439
    @kasheed439 27 днів тому

    огнище!

  • @kasheed439
    @kasheed439 27 днів тому

    Спасибо. Однозначно подпишусь

  • @kasheed439
    @kasheed439 27 днів тому

    Круто объясняешь. Спасибо большое!

  • @ОльгаСтепанова-ъ7у

    Супер! Постоянно на эту работу тучу времени тратила, каждый раз "придумывая велосипед". Спасибо тысячу раз!

  • @alevadnaya
    @alevadnaya Місяць тому

    Очень удобная библиотека. Интересно, есть ли что-то для моков ответов БД, очередей, кэшей

  • @Asian_saxaul
    @Asian_saxaul Місяць тому

    Бесценная информация, огромное спасибо за подробное объяснение

  • @ВячеславМельников-с7р

    Прокрастинация😂

  • @ИгорьТрофимов-ш8з
    @ИгорьТрофимов-ш8з Місяць тому

    Алексей, прохожу Selenium в ЯП. У тебя в 10 раз интереснее. Спасибо за уроки!!!

  • @igora6367
    @igora6367 Місяць тому

    Топчик

  • @el1oz155
    @el1oz155 Місяць тому

    друг ты ничего не рассказал. самый стандартный интерпретатор называется CPython. он написан на языке С. как это все работает теперь. интерпретатор экзекютит каждую линию сверху вниз. и процесс такой: source code -> compilation -> bytecode. bytecode это не машинный код. он межуровневый и его функции написанны на С. затем bytecode уже выполняется на виртуальной машине питона PVM. PVM обробатывает bytecode тем самым опускаясь на уровень С и там уже выполняются функции которые написанные на С. и потом уже это все дело переводится в машинный код и воспроизводится нашим CPU.

  • @mortitv211
    @mortitv211 Місяць тому

    У меня возникла проблема. Я знаю уже что чтобы запустить автоматизацию в текущий браузер который уже открыт, нужно запустить их на общем порте. Но на работе мне так и не удалось найти свободный порт и не смог узнать на каком порте запускается браузер на работе. Можете помочь?

  • @Карп-у6ч
    @Карп-у6ч Місяць тому

    Спасибо за данный видео курс! Я смотрел курс от другого парня на 40 минут, и все что я смог после этого так это заполнять форму(имя и пароль) и больше не чего, плюс от него информация была максимально расплывчата. У тебя же все предельно понятно, каждый метод предельно понятно объяснен и разжеван. Еще раз спасибо!

  • @АлександрГригоренко-г8к

    Спасибо за уроки. А какая цветовая тема у вас в редакторе установлена?

  • @pip_install7496
    @pip_install7496 Місяць тому

    С помощью моков можно подсчитать желаемое количество выполнения нужного метода, разве не так?

  • @YerZhanMel
    @YerZhanMel Місяць тому

    Спасибо. Очень помогли.

  • @thecomrad1677
    @thecomrad1677 Місяць тому

    Евгениально!

  • @st0nedcreature17
    @st0nedcreature17 Місяць тому

    Ох, наконец-то я дошёл до конца этого курса. На очереди вебинар по лайв-кодингу (когда попробовал посмотреть в первый раз, убежал в ужасе через 15 минут после начала, ибо знал слишком мало на тот момент). Шесть месяцев я подробно разбирал и запоминал, как работает каждый кейс из твоего видео и я сегодня нереально благодарен тебе. Думаю, возьму ещё месяца полтора, чтобы закрепить и написать пару своих пет-проектов для резюме. Безусловно, буду дальше смотреть твой канал, подтяну питон и куплю однажды твой расширенный курс по автоматизации). Огромное тебе спасибо 🤝.

  • @st0nedcreature17
    @st0nedcreature17 Місяць тому

    А можно ли автоматизировать таким образом слайд бегунка с ценой, как это обычно бывает в интернетах магазинах - смещаешь бегунок и цена меняется? Эта мысль мне не даёт покоя второй день после просмотра этого видео.

  • @jollyroger5049
    @jollyroger5049 Місяць тому

    спасибо. просто спасибо

  • @Kirill_IT_coding
    @Kirill_IT_coding Місяць тому

    Вот и подходит конец курса. Все было очень понятно. Жалко что мало просмотров, контент очень годный. Спасибо

  • @vladimirgailit1478
    @vladimirgailit1478 Місяць тому

    Очень хорошие и грамотные объяснения! А как можно сделать циклический опрос страницы на событие, например, появление элемента? То есть, если появление элемента может происходить не один раз и в произвольные моменты времени?

  • @st0nedcreature17
    @st0nedcreature17 Місяць тому

    Лучший

  • @musicforyou1380
    @musicforyou1380 Місяць тому

    для чего это? это как игра в шашки с самим собой....создал переменную с value и обращаюсь к этой переменной чтобы посмотреть её значение. Как можно работать с такими ответами, если ответы сгенерированы не реальным сервером, а самим собой. В чем польза-то?

    • @СергейИгонин-п3п
      @СергейИгонин-п3п 18 днів тому

      Я пока не автоматизатор, но на примера моков ответов сервера в Charles Proxy могу сказать, что польза большая в плане негативного тестирования, когда нужно проверить поведение приложения при некорректном ответе от сервера или инсценировать редкий ответ от сервера, который невозможно добиться в штатных устовиях на проде.

    • @reed-j
      @reed-j 13 днів тому

      когда у тебя несколько сервисов которые зависят друг от друга (1 от 2), но первый сделан полностью, а второй еще в разработке. с помощью моков мы можем уже тестировать первый сервис, как позитивными так и негативными сценариями. спасибо @qa-proka4 за каждый видос.

    • @musicforyou1380
      @musicforyou1380 13 днів тому

      @@reed-j буквы понимаю, но пазл не складывается в задуманную кем-то картинку. Видимо нужно в реальности столкнуться с этим, чтобы понять.

  • @AeliaKavington
    @AeliaKavington 2 місяці тому

    В моке задержки от сервера ошибка же? Мы ждём не _ответа от сервера_, а просто ждём чтобы выполнить запрос. response.elapsed в данном случае покажет не 2.5 сек, как ожидается по условию теста.

    • @whitelightcoding1847
      @whitelightcoding1847 26 днів тому

      Этот запрос ведь и является имитацией респонса от сервера

    • @whitelightcoding1847
      @whitelightcoding1847 26 днів тому

      Хотя чисто технически написано неверно. вынести задержку в отдельный метод было бы корректнее.