fa
Feedback
Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

رفتن به کانال در Telegram

Все самое полезное для тестировщика в одном канале. Наши курсы: https://clc.to/wlBkTA По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/12538d6f Для обратной связи: @proglibrary_feeedback_bot

نمایش بیشتر
9 100
مشترکین
-124 ساعت
-147 روز
-2030 روز
آرشیو پست ها
+1
🆖 Шпаргалка от Gitlab Что внутри: — Основные команды — Коммиты, ветки, история — Полезное для QA: проверка изменений, сравнение веток, воспроизведение багов Доступны два варианта — на русском и английском. — Скидка 40% на все курсы АкадемииРозыгрыш Apple MacBookБесплатный тест на знание математики 🐸 Библиотека тестировщика #артефакт

🤫 JOIN на пальцах: как быстро в них не запутаться Когда данные раскиданы по разным таблицам, JOIN помогает собрать нужную ка
🤫 JOIN на пальцах: как быстро в них не запутаться Когда данные раскиданы по разным таблицам, JOIN помогает собрать нужную картину. Главное — понимать какие строки остаются в результате, и картинка ниже это как раз показывает. Коротко по сути: 🔵 INNER JOIN — только совпавшие строки. 🔵 LEFT JOIN — вся левая таблица + совпадения справа. 🔵 RIGHT JOIN — вся правая таблица + совпадения слева. 🔵 FULL OUTER JOIN — все строки из обеих таблиц, независимо от совпадений. А варианты с NULL — это просто та же логика, но с акцентом на то, где данных нет. Как запомнить одной фразой:
 • INNER — пересечение
 • LEFT — левое всё, правое по совпадению
 • RIGHT — правое всё, левое по совпадению
 • FULL — берём всё
💡 JOIN — это про выбор того, что оставить, а не про «сложные запросы». 🐸 Библиотека тестировщика #теория_на_пальцах

🥺 Баг воспроизводится только у вас — куда идёте за помощью? Иногда кажется, что вселенная издевается: у всех зелёное, а у ва
🥺 Баг воспроизводится только у вас — куда идёте за помощью? Иногда кажется, что вселенная издевается: у всех зелёное, а у вас всё падает. CI красный без причины. Новая фича — сплошные edge cases. Куда вы идёте в такие моменты? У каждого свой «секретный набор»: статьи, тг-каналы, эксперты 👍 Делитесь: 🔍 Какие каналы/блоги про QA читаете? 🔍 Где ищете примеры тест-дизайна? 🔍 В каких сообществах получаете реально полезные советы? 🔍 Кто объясняет сложное так, что сразу понятно? Может, ваш совет спасёт кого-то в следующий раз. Собираем список полезных ресурсов для тестировщиков ⬇️ 🐸 Библиотека тестировщика #стендап_qa

🔥 На рынке сейчас математика — снова король: AI растёт быстрее, чем вузы успевают обновлять программы. Мы же перестраиваем к
🔥 На рынке сейчас математика — снова король: AI растёт быстрее, чем вузы успевают обновлять программы. Мы же перестраиваем курс под индустрию мгновенно. Хочешь наконец разобраться в математике для DS, а не гуглить «что такое градиент» перед собесом? Новый курс «Математика для разработки AI-моделей» — это 8 недель плотной подготовки, свежая программа и только актуальные темы, которые реально нужны в ML. Что в курсе: → линал, производные, градиенты, вероятности, статистика; → практика на Python и 3 большие ДЗ; → живые вебинары + разбор ваших вопросов; → финальный мини-проект, который можно положить в портфолио; → доступ к материалам и чат с экспертами. Для старта нужны только школьная математика и базовый Python. 🎁 Бонусы ноября: — скидка 40% до 30 ноября; — «Базовая математика» в подарок при оплате; → бесплатный тест уровня математики. 👉 Записывайся на курс

📎 cURL для тестировщиков: работа с куками и авторизацией В прошлый раз разобрали базовые приёмы: форматирование JSON, отправку файлов, отслеживание редиректов, замер времени ответа и поиск флаков. Сегодня — про авторизацию и куки, без которых не протестировать ни один нормальный API. 🥇 Сохранить куки и переиспользовать

# Логинимся и сохраняем куки
curl -c cookies.txt -X POST -d "user=admin&pass=secret" https://api/login

# Используем куки в следующих запросах
curl -b cookies.txt https://api/profile
➡️ Полезные трюки:

# Посмотреть куки
cat cookies.txt

# Обновить куки (читать и писать одновременно)
curl -b cookies.txt -c cookies.txt https://api/refresh

# Проверить, что куки отправляются
curl -v -b cookies.txt https://api/test 2>&1 | grep Cookie
➡️ Быстрый тест авторизации:

# 1. Логин
curl -c cookies.txt -X POST -d '{"user":"test"}' https://api/login

# 2. Запрос с авторизацией (должен вернуть 200)
curl -b cookies.txt -s -o /dev/null -w "%{http_code}\n" https://api/profile

# 3. Удалить куки и повторить (должен вернуть 401)
rm cookies.txt
curl -s -o /dev/null -w "%{http_code}\n" https://api/profile
🔹 Основы IT для непрограммистов 🔹 Получить консультацию менеджера 🔹 Сайт Академии 🔹 Сайт Proglib 🐸 Библиотека тестировщика #тест_драйв

🧪 Шпаргалка: лучшие практики тест-кейсов Краткая подборка правил, которые помогают писать чёткие, понятные и рабочие тест-кейсы. Подойдёт как быстрый чек-лист перед оформлением или ревью. 🐸 Библиотека тестировщика #артефакт

🎄 Скоро Новый год, а ты всё ещё не в бигтехе? Если твой путь лежит в ML, DS или AI, то одна вещь решает всё: математика. Без
🎄 Скоро Новый год, а ты всё ещё не в бигтехе? Если твой путь лежит в ML, DS или AI, то одна вещь решает всё: математика. Без неё — хоть три проекта сделай, хоть сотню туториалов посмотри — на собесе тебя всё равно вернут на «а что такое градиент?» 🔥 Экспресс-курс «Математика для Data Science» — 8 недель, чтобы закрыть базу раз и навсегда. Что внутри: 🔘 живые вебинары, где можно задавать вопросы экспертам 🔘 записи лекций + доступ к материалам 🔘 практические задания на Python и финальный мини-проект с фидбеком 🔘 программа обновлена в ноябре 2025 🔘 2 месяца только нужного — без воды 🔘 достаточно школьной математики и базового Python 🎁 Бонусы ноября: → 40% скидка до 30 ноября → при оплате до конца месяца — курс «Базовая математика» в подарок → бесплатный тест, чтобы узнать свой уровень математики 👉 Хочу стартовать

🤐 Нашёл баг в своём коде Кейс: Вы автоматизировали тесты. Через месяц обнаружили, что из-за вашей ошибки 30% автотестов не в
🤐 Нашёл баг в своём коде Кейс: Вы автоматизировали тесты. Через месяц обнаружили, что из-за вашей ошибки 30% автотестов не выполняются корректно — но все показывали "passed". Возможно, из-за этого пропустили баги в production. ❓ Что вы делаете: 👍 — Сразу сообщаю команде и фикшу публично 🤩 — Тихо чиню и надеюсь, никто не заметил 🥰 — Сообщаю только тимлиду, решаем вдвоём ❤️ — Анализирую impact, потом поднимаю вопрос 🐸 Библиотека тестировщика #стендап_qa

🎯 5 навыков, за которые борются работодатели Selenium знают все. А вот эти скиллы выделяют вас на фоне сотни резюме 🔜 🟡 Пр
🎯 5 навыков, за которые борются работодатели Selenium знают все. А вот эти скиллы выделяют вас на фоне сотни резюме 🔜 🟡 Продуктовое мышление Не просто находить баги, а понимать: какие критичны для бизнеса, а какие можно отложить. Видеть продукт глазами пользователя, а не через призму тест-кейсов. 🟡 Умение задавать правильные вопросы «А что будет, если пользователь…?» вместо «Где требования?». Способность выявлять неочевидные риски до того, как они станут проблемой в проде. 🟡 Навык аргументации Объяснить разработчику, почему это критичный баг. Доказать PM, почему нужно больше времени на тестирование. Защитить качество без скандалов и конфликтов. 🟡 Адаптивность Новый проект, новый стек, новая команда — и вы быстро включаетесь в работу. Учитесь на ходу, не боитесь неизвестности. 🟡 Системное мышление Видите связи между модулями. Понимаете, где изменение в одном месте сломает другое. Думаете на несколько шагов вперед. А какой навык из списка вам дался труднее всего 🐸 Библиотека тестировщика #карьерный_трек

📎 5 топовых приёмов cURL, которые экономят нервы 🟡 Смотреть JSON красиво

curl -s https://api/test | jq .
🟡 Отправить JSON-тело из файла

curl -X POST -H "Content-Type: application/json" \
     -d @body.json https://api/create
🟡 Отследить редиректы и причины 30x

curl -v -L https://api/login
🟡 Измерить время ответа API

curl -w '%{time_total}\n' -o /dev/null -s https://api/test
🟡 Повторить запрос 10 раз, чтобы поймать флаки

for i in {1..10}; do \
  curl -s -o /dev/null -w "%{http_code}\n" https://api/test; \
done
🔹 Основы IT для непрограммистов 🔹 Получить консультацию менеджера 🔹 Сайт Академии 🔹 Сайт Proglib 🐸 Библиотека тестировщика #тест_драйв

📦 Потерявшийся заказ из-за пробела в SKU В один момент в e-commerce начали поступать жалобы: «Заказ оформился, но в личном к
📦 Потерявшийся заказ из-за пробела в SKU В один момент в e-commerce начали поступать жалобы:
«Заказ оформился, но в личном кабинете пусто».
«Трек-номер не появляется».
«Статус заказа не обновляется».

Разработчики думали на очередь сообщений, курьеров, кэш… пока кто-то не посмотрел сырые события Kafka.

В одном из SKU затесился пробел:

"sku": "A-1001"
Для фронта и бэка это был разный товар. Один микросервис обрезал пробелы, другой — нет. Третий использовал SKU как primary key и просто отбрасывал «неизвестные события».
🔤 Почему не поймали: — Автотесты проверяли только happy-path — Нет валидации SKU перед сохранением — Тестовые данные были «образцово-показательные» В проде же этот SKU ввёл контент-менеджер вручную. А вы проверяете обработку «грязных» данных на вводе 👍 — Да, валидируем всё ❤️ — Частично 🤩 — Иногда лифта хватает на дебаг 🐸 Библиотека тестировщика #разбор_полетов

⭐️ Три уровня пирамиды тестирования — как они работают вместе 🏗️ Юнит-тесты (80%) — фундамент Что проверяют: отдельные функц
⭐️ Три уровня пирамиды тестирования — как они работают вместе 🏗️ Юнит-тесты (80%) — фундамент
Что проверяют: отдельные функции и 

Примеры: расчёт скидки, проверка email, преобразование данных.

Плюсы: быстрые, дешёвые, запускаются тысячами.

Минусы: не дают понимания, работает ли система целиком.
🔗 Интеграционные тесты (15%) — связующий слой
Что проверяют: как части системы вз

Пример: API → сервис → база → отправка email.

Плюсы: находят проблемы на стыках.

Минусы: медленнее и требуют больше подготовки.
🎨 E2E тесты (5%) — контрольный проход
Пример: вход → корзина → оплата → чек на почту.

Плюсы: уверенность, что весь бизнес-флоу живой.

Минусы: дорогие, нестабильные, долго выполняются.
🏠 Аналогия с безопасностью дома: 🔴 Юниты — замки на каждой комнате: локальная защита. 🔴 Интеграционные — замки и решётки на окнах: перекрывают обходные пути. 🔴 E2E — главный замок на входной двери: проверяет, что дом закрыт целиком. Можно поставить 50 навесных замков на дверь, но если окна открыты — смысла мало. Настоящая защита — это баланс всех уровней. 🐸 Библиотека тестировщика #теория_на_пальцах

⭐️ Три уровня пирамиды тестирования — как они работают вместе 🏗️ Юнит-тесты (80%) — фундамент ``` Что проверяют: отдельные функции и методы. Примеры: расчёт скидки, проверка email, преобразование данных. Плюсы: быстрые, дешёвые, запускаются тысячами. Минусы: не дают понимания, работает ли система целиком.``` 🔗 Интеграционные тесты (15%) — связующий слой Что проверяют: как части системы взаимодействуют между собой. Пример: API → сервис → база → отправка email. Плюсы: находят проблемы на стыках. Минусы: медленнее и требуют больше подготовки. 🎨 E2E тесты (5%) — контрольный проход Что проверяют: поведение системы глазами реального пользователя. Пример: вход → корзина → оплата → чек на почту. Плюсы: уверенность, что весь бизнес-флоу живой. Минусы: дорогие, нестабильные, долго выполняются. 🏠 Аналогия с безопасностью дома: 🔴 Юниты — замки на каждой комнате: локальная защита. 🔴 Интеграционные — замки и решётки на окнах: перекрывают обходные пути. 🔴 E2E — главный замок на входной двери: проверяет, что дом закрыт целиком. Можно поставить 50 навесных замков на дверь, но если окна открыты — смысла мало. Настоящая защита — это баланс всех уровней. 🐸 Библиотека тестировщика #теория_на_пальцах

🤓 Как правильно говорить о зарплате на собесе Многие теряют деньги не из-за навыков, а из-за неверных фраз на этапе обсужден
+4
🤓 Как правильно говорить о зарплате на собесе Многие теряют деньги не из-за навыков, а из-за неверных фраз на этапе обсуждения компенсации. 🈁 Собрали все самое главное в карточки: — когда говорить о деньгах; — как звучит сильный диапазон; — как обосновать рост +30–50%; — что делать с lowball. 💬 Переговоры — это норма. Уверенность в цифре = зрелость специалиста. 🐸 Библиотека тестировщика #карьерный_трек

..и баг появляется с первого раза 🔜 Начинаю проверять: iPhone 13 Mini — работает ✓ iPhone 12 обычный — работает ✓ Откатываю
..и баг появляется с первого раза 🔜 Начинаю проверять: iPhone 13 Mini — работает ✓ iPhone 12 обычный — работает ✓ Откатываю iOS до 18.0 на том же 12 Mini — баг пропал ✓ Показываю разработчику девайс и логи. ➡️ В чем была проблема: В iOS 18.1 Apple изменили задержку обработки тапов именно на 12 Mini (оптимизация батареи). Наш дебаунс на кнопке рассчитан на старые тайминги — просто не успевает блокировать второй клик. ➡️ Что сделали: Увеличили задержку блокировки кнопки + добавили защиту от дублей на бэкенде. ⚡️ Всегда фильтруй баг-репорты по моделям устройств и версиям ОС. Иногда проблема не в твоём коде, а в том, как конкретное железо обрабатывает события. 🐸 Библиотека тестировщика #стендап_qa

📊 А правда, что математика в Data Science не нужна? Нет. Без неё вы не пройдёте собес и не поймёте, почему модель ведёт себя
📊 А правда, что математика в Data Science не нужна? Нет. Без неё вы не пройдёте собес и не поймёте, почему модель ведёт себя странно. Линал, матан и вероятности — это база, без которой работа в ML превращается в угадайку. 🔥 Эту базу можно собрать за 2 месяца на экспресс-курсе «Математика для Data Science». 👩‍🏫 Кто ведёт курс:Мария Тихонова PhD, руководитель исследовательского направления в SberAI, доцент ВШЭ. → Диана Миронидис Преподаватель ВШЭ, автор научпоп-материалов по математике для блога МТС. → Ксения Кондаурова Преподаватель преподаватель T-Банка, автор курсов ЦУ и Edutoria. → Маргарита Бурова Академический руководитель программ по аналитике и ML, Wildberries & Russ. 🎁 Что сейчас доступно: → бесплатный тест, чтобы узнать свой уровень математики; → скидка 40% до 30 ноября; → если оплатить до конца ноября, курс «Базовая математика» в подарок. 👉 Пишите менеджеру, если хотите попасть в поток

🔖 Шпаргалка по Selenium Короткий лист с ключевыми командами: запуск драйверов, локаторы, навигация, работа с алертами, фреймами и окнами, взаимодействие с элементами и быстрые скриншоты. Подходит и джунам, и тем, кто пишет UI-автотесты каждый день — удобный минимальный набор, который всегда помогает ускорить работу. 🐸 Библиотека тестировщика #артефакт

🔖 Важные апдейты 🔴 Google System Updates Добавлены улучшения сервисов: стабильность, работа WebView, восстановление данных,
🔖 Важные апдейты 🔴 Google System Updates Добавлены улучшения сервисов: стабильность, работа WebView, восстановление данных, системные функции. 🔎 Рекомендация: протестировать авторизацию, WebView-экраны, уведомления. 🔴 AndroidX — свежие релизы Обновлены Activity, Room и другие библиотеки. 🔎 Рекомендация: убедиться, что сборки с новыми версиями работают корректно, особенно навигация и состояние экранов. 🔴 Cypress 15.7.0 Обновление принесло важные улучшения: — фиксы фризов и падений при большом DOM, — поддержка Next.js 16 в компонентных тестах, — исправления циклических объектов в cy.wrap(), — корректные retries и stack traces. 🔎 Что проверить: стабильность автотестов, логи, работу компонентных тестов, особенно в проектах на Next.js. 🔹 Курс «Программирование на языке Python» 🔹 Получить консультацию менеджера 🔹 Сайт Академии 🔹 Сайт Proglib 🐸 Библиотека тестировщика #тест_драйв

⚡️ Что такое Deep Links Это ссылка, открывающая в приложении не главный экран, а конкретный раздел — например, форму ввода пр
⚡️ Что такое Deep Links Это ссылка, открывающая в приложении не главный экран, а конкретный раздел — например, форму ввода промокода из рассылки. Если приложение не установлено используется Deferred Deep Link: 1. пользователь кликает по ссылке → 2. попадает в магазин → 3. устанавливает приложение → 4. при первом запуске приложение получает сохранённые на сервере параметры (промокод, реферал). ⏺ Как работает механизм: Сервер фиксирует токен диплинка и параметры. После первого запуска приложение запрашивает эти данные и подставляет их автоматически. ⏺ Особенности платформ: — Android: официальный Play Install Referrer API. — iOS: обходные решения, например передача идентификатора диплинка через буфер обмена. ⚠️ Нужно проверять оба сценария: когда приложение уже установлено и когда ставится после клика. Плюс смотреть, что статусы в БД правильные (opened, installed, already_installed), и промокоды действительно применяются. 🔗 Источник 🐸 Библиотека тестировщика #теория_на_пальцах #mobile_testing