💻 Хочешь MacBook Pro? Просто начни учиться!
Да-да, вы не ослышались: Proglib.academy дарит макбук за учёбу!
Всё просто:
— купи любой курс Академии до 15 ноября;
— пройди 2 недели обучения (можно за два дня );
— напиши куратору в чате курса хэштег #розыгрыш.
📚 Выбирай свой курс:
▫️ «Математика для DS» — для тех, кто хочет уверенно работать с данными;
▫️ «Основы Python» — чтобы начать писать код с нуля;
▫️ «Алгоритмы и структуры данных» — для будущих инженеров;
▫️ «AI-агенты» или «Машинное обучение» — для тех, кто хочет прокачаться в ИИ.
👉 Участвовать в розыгрыше
Да-да, вы не ослышались: Proglib.academy дарит макбук за учёбу!
Всё просто:
— купи любой курс Академии до 15 ноября;
— пройди 2 недели обучения (
— напиши куратору в чате курса хэштег #розыгрыш.
📚 Выбирай свой курс:
▫️ «Математика для DS» — для тех, кто хочет уверенно работать с данными;
▫️ «Основы Python» — чтобы начать писать код с нуля;
▫️ «Алгоритмы и структуры данных» — для будущих инженеров;
▫️ «AI-агенты» или «Машинное обучение» — для тех, кто хочет прокачаться в ИИ.
👉 Участвовать в розыгрыше
🥰4🤩2
Если система получает одинаковый запрос несколько раз, а результат не меняется — операция идемпотентна. Это важно, когда возможен дубль клика или повтор запроса из-за таймаута.
✅ Идемпотентно:
Выключатель света
• Нажал 1 раз → свет выключен
• Нажал ещё 10 раз → свет всё равно выключен
❌ Неидемпотентно:
Кнопка «добавить в корзину»
• Нажал 1 раз → 1 товар
• Нажал 5 раз → 5 товаров
— API-методы (особенно PUT, DELETE)
— Кнопки, которые можно нажать дважды
— Повтор запросов при таймаутах или нестабильной сети
POST
/create-paymentКлик → 100₽ списано
Двойной клик → 200₽ списано ❌
PUT
/payment/1231 запрос → платёж создан
10 запросов → платёж всё равно один ✅
#теория_на_пальцах
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7🤩3👍2
Какой метод API вы чаще проверяете на идемпотентность?
Anonymous Poll
37%
GET
18%
PUT
35%
POST
11%
DELETE
🔥6🤩2
🛒 Black Friday от Proglib.academy!
Только до 30 ноября — скидка 40% на ВСЕ курсы.
Пора добавить в корзину не носки, а новые скиллы: Python, математика для Data Science, AI, алгоритмы и структуры данных, ML.
🎓 Выбирай курс, который реально двинет тебя в карьере, и учись со скидкой.
👉 Учиться со скидкой
Только до 30 ноября — скидка 40% на ВСЕ курсы.
Пора добавить в корзину не носки, а новые скиллы: Python, математика для Data Science, AI, алгоритмы и структуры данных, ML.
🎓 Выбирай курс, который реально двинет тебя в карьере, и учись со скидкой.
👉 Учиться со скидкой
🥰4🤩2👍1
Услышали одну из этих фраз на созвоне? Включайте радар — цель найдена. Эти фразы — не вредность. Это когнитивные ловушки, в которые попадает каждый:
Разработчик видит код изнутри. Тестирует как программист, а не как пользователь.
Проверил один сценарий → "работает". Edge cases? А что это?
«Одна строка кода — что может пойти не так?» (Narrator: многое пошло не так)
“Быстрый фикс, не тестируй”
Меняли формат даты DD.MM.YYYY → DD/MM/YYYY
Сломали импорт CSV, фильтры и API-интеграции.
10 мин теста против 6 ч hotfix’а и отката🤦♂️
• Работает на моей машине → проверьте окружение
• Я проверял → уточните сценарии
• Быстрый фикс → smoke-тест минимум
• Legacy → спросите у саппорта, кто юзает
• Очевидно → если нет спеки, ничего не очевидно
Какая фраза вам встречается чаще всего
#разбор_полетов
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰6👍2🔥1🤩1
Забудьте базу вроде "Copy as cURL". Вот трюки, которые сэкономят часы:
user.role = 'admin', false
Breakpoint не сработает, но переменная изменится. Тестируем права без деплоя.
HAR для слабаков. Экспортируйте ВСЁ сетевое взаимодействие с шифрованием и DNS. Ловит баги, которые HAR пропускает.
Найдите все промисы в памяти:
queryObjects(MyComponent)
Выбрали элемент → ввели команду → видите все события live. Забудьте про addEventListener для дебага.
Покажет все обработчики на элементе. Правый клик → в код.
Копирует что угодно в буфер:
copy(await (await fetch('/api')).json())
Rendering → дальтонизм/размытие. 8% мужчин — дальтоники. Находите реальные баги.
#тест_драйв
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🥰2🤔2🤩2👍1
Многие думают, что переход в senior — это про новые инструменты, фреймворки и CI/CD. На деле — это про смену мышления.
Middle ищет баги. Senior — ищет причины, почему они появляются.
Он проектирует процессы так, чтобы дефекты не доходили до продакшена.
Не тестирует — обеспечивает качество.
Middle закрывает тест-кейсы. Senior решает, какие проверки важнее, а какие можно отложить.
Он управляет рисками, а не списком задач.
Middle делает работу. Senior обучает, менторит, делится подходами, поднимает планку для всей команды.
Он не просто тестирует — он формирует культуру качества.
Senior не пишет тесты «чтобы были». Он выстраивает стратегию: что автоматизировать, а что оставить ручным, как измерять метрики и когда результаты действительно значимы.
#карьерный_трек
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩5❤3👍3
Скорость, стабильность или покрытие? Этот вопрос делит команды автоматизации на три непримиримых лагеря.
— Быстрый фидбек = быстрая разработка
— Долгие тесты никто не запускает локально
— Каждый флейк = 15–30 минут расследований «это баг или тест?»
— Нестабильные тесты → отключённые тесты → дыры в покрытии
— Один критичный баг в проде дороже всех оптимизаций
— «80 % покрытия» — а что покрыто: логика или геттеры?
👍 — Скорость (быстро узнать о багах)
❤️ — Стабильность (доверие к результатам)
🔥 — Покрытие (защита от регрессии)
#стендап_qa
Please open Telegram to view this post
VIEW IN TELEGRAM
❤10🔥7👍1🥰1🤩1
test-case.jpg
145.4 KB
Как оформить тест-кейс так, чтобы его поняли и разработчики, и аналитики:
— структура и обязательные поля,
— порядок написания,
— правила, чтобы тесты были переиспользуемыми и понятными,
— типичные ошибки, которых стоит избегать.
#артефакт
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🥰3
🧪 Логи: читать вручную или собирать автоматически
В каждой команде находится тот самый человек, который «чует баги по логам». Но автоматизация тоже давно хочет забрать себе эту работу. И дилемма остаётся актуальной.
➡️ Ручной просмотр
— даёт ощущение продукта «изнутри»
— помогает замечать необычные последовательности и поведенческие аномалии
— но съедает часы и требует высокой концентрации
➡️ Парсеры и алерты
— быстро подсвечивают ошибки, пики, повторяющиеся паттерны
— помогают масштабировать контроль качества без ручной рутины
— но легко превратить анализ логов в «жду оповещение» вместо активного исследования
👍 — Логи руками
❤️ — Пусть машины ищут аномалии
🐸 Библиотека тестировщика
#тест_драйв
В каждой команде находится тот самый человек, который «чует баги по логам». Но автоматизация тоже давно хочет забрать себе эту работу. И дилемма остаётся актуальной.
— даёт ощущение продукта «изнутри»
— помогает замечать необычные последовательности и поведенческие аномалии
— но съедает часы и требует высокой концентрации
— быстро подсвечивают ошибки, пики, повторяющиеся паттерны
— помогают масштабировать контроль качества без ручной рутины
— но легко превратить анализ логов в «жду оповещение» вместо активного исследования
👍 — Логи руками
❤️ — Пусть машины ищут аномалии
#тест_драйв
Please open Telegram to view this post
VIEW IN TELEGRAM
❤10👍3🤩3
🧩 Файл прошёл валидацию… потому что проверяли только расширение
История из обычного продукта, который принимал документы от пользователей.
🎥 Платформа позволяла загружать PDF-файлы с договорами. Валидация была простой:
— разрешить .pdf
— запретить всё остальное.
Проблема вскрылась случайно: один клиент загрузил видео, переименовав его в contract.pdf.
И система спокойно приняла файл.
🎥 Что пошло не так:
В итоге backend получал битые данные, а фронт показывал «Документ принят».
📌 Чтобы такие ситуации не повторялись, сохраните себе небольшой чек-лист валидации файлов — он на картинке 🎀
🐸 Библиотека тестировщика
#разбор_полетов
История из обычного продукта, который принимал документы от пользователей.
— разрешить .pdf
— запретить всё остальное.
Проблема вскрылась случайно: один клиент загрузил видео, переименовав его в contract.pdf.
И система спокойно приняла файл.
— Проверяли только расширение.
— MIME-тип определялся по тому же расширению.
— На серверной стороне отсутствовала проверка сигнатур файла.
— В логах ошибка декодирования PDF подавлялась и отмечалась как «не критичная».
В итоге backend получал битые данные, а фронт показывал «Документ принят».
#разбор_полетов
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩6👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁8🥰4🤩3
Selenium-cheat-sheet-webdriver.pdf
47.7 KB
Устали каждый раз гуглить синтаксис Selenium?
Держите полную шпаргалку по WebDriver на Java — все самое нужное на одной странице:
#артефакт
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍4🤩1
Каждый тестировщик говорит, что пишет подробные и понятные багрепорты. Но мы оба знаем, как это выглядит в реальной жизни.
«Не работает»,
«Иногда падает»,
«Тут что-то странное»
— классика жанра.
А потом разработчик сидит и вызывает дух предков, чтобы воспроизвести «вот это самое странное»
Как вы реально пишете багрепорты?
#стендап_qa
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4🤩1
😁6🥰1🤩1
📘 Хочешь в Data Science, но есть пробелы в знаниях математики?
Мы сделали экспресс-курс «Математика для Data Science», который за 2 месяца даст тебе фундамент, без которого ни одна ML-модель не взлетит 🚀
Что тебя ждёт:
🔹 живые вебинары с экспертами (НИУ ВШЭ, SberAI, Wildberries&Russ);
🔹 практика в Python, квизы и проверка заданий экспертами;
🔹 матрицы, регрессии, вероятности и статистика: всё на примерах из реальных задач;
🔹 старт — 4 декабря.
🔥 Не упусти халяву: сейчас 40% до 30 ноября
👉 Записаться на курс
Мы сделали экспресс-курс «Математика для Data Science», который за 2 месяца даст тебе фундамент, без которого ни одна ML-модель не взлетит 🚀
Что тебя ждёт:
🔹 живые вебинары с экспертами (НИУ ВШЭ, SberAI, Wildberries&Russ);
🔹 практика в Python, квизы и проверка заданий экспертами;
🔹 матрицы, регрессии, вероятности и статистика: всё на примерах из реальных задач;
🔹 старт — 4 декабря.
🔥 Не упусти халяву: сейчас 40% до 30 ноября
👉 Записаться на курс
😁3🤩1
Вы проверяете только внешний результат: что обещано в спецификации — то и должно происходить. Если функция «должна» отказывать при неверном вводе — проверяете именно отказ.
Метод намеренно отрезает доступ к архитектуре. Это помогает смотреть на продукт как реальный пользователь.
Черный ящик — это всегда игра «что подам → что получу». Используйте классы эквивалентности, граничные значения, позитивные/негативные сценарии.
Важно тестировать не только отдельные поля, но и цепочки действий. Например: «логин → неверный пароль → повторная попытка → блокировка».
В чёрном ящике нельзя «покрыть код» — поэтому выбирают самое критичное: платежи, авторизация, все места, где ошибка несёт ущерб.
#теория_на_пальцах
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2🤩2
Где вести тесты, когда привычные инструменты больше недоступны.
На реальном примере интеграции OpenSearch в LMS iSpring Learn автор расскажет, как протестировать полнотекстовый поиск, сохранив баланс между качеством и трудозатратами.
Ошибки, которые может заметить только начинающий.
Какие инструменты можно использовать для «автоматизации», какие есть альтернативы данным инструментам и о том, насколько всё это влияет на качество регресса и скорость его прохождения.
#release_notes
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰4🤩2👍1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁7🥰2🤩2
Обновлённое издание — это полностью переписанный учебник, усиленный практикой и AI-инструментами.
— Полная переработка материала: яснее для новичков, глубже для продвинутых.
— Учебное приложение FTB: единая платформа для всех практических задач (UI, API, backend, DB).
— AI-симулятор собеседований: сотни практических QA-задач с гибкой проверкой.
— Шпаргалки и улучшенные иллюстрации в каждой главе.
Учебник строится вокруг практики: от коротких упражнений внутри глав до многошаговых задач, максимально приближённых к реальной работе тестировщика.
#карьерный_трек #intern #junior
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🥰2🤩2