Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты
8.83K subscribers
1.52K photos
182 videos
61 files
2.89K links
Все самое полезное для тестировщика в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/12538d6f

Работать у нас: https://job.proglib.io/

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
🎭 Разработчик закрыл ваш баг как «works as intended»

Кейс:

Вы нашли странное поведение: при быстром двойном клике система списывает деньги дважды. Создали баг-репорт. Разработчик закрыл тикет:

Пользователь не должен так быстро кликать, это edge case


Но в аналитике видно — такое происходит 50 раз в день.

Что вы делаете:

👍 — Реоупеню с данными из аналитики
🤩 — Иду к тимлиду разработки напрямую
🥰 — Добавляю в документацию как «известное ограничение»
❤️ — Поднимаю на ретро, обсуждаем критерии edge case

🐸 Библиотека тестировщика

#стендап_qa
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2410🤩5🥰1
k6 vs JMeter: какой инструмент выбрать

k6 ⚡️ (Grafana Labs)

 • JS-скрипты, легко подключается к CI/CD
• Метрики в реальном времени в Grafana
• Лёгкий, подходит для контейнеров
• Отличен для REST/GraphQL/API Gateway


− Только HTTP/Websocket
− Нет GUI — всё через код

JMeter 🏛 (Apache)



• Множество протоколов (HTTP, JDBC, JMS, SOAP)
• Огромная база плагинов


− Требует тюнинг JVM
− Тяжелый, плохо масштабируется в Docker
− XML-проекты сложно ревьюить

📌 Когда брать k6: CI/CD, микросервисы, API-first проекты.
📌 Когда брать JMeter: сложные протоколы, legacy, большой QA-отдел.

🐸 Библиотека тестировщика

#тест_драйв
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🥰2🤩2
💧 Ещё один типичный анти-паттерн: «Капля»

Это когда много E2E-тестов и юнитов, но почти нет интеграционных.

Что идёт не так 🔜

— Юниты проверяют отдельные функции — всё ок
— E2E проверяют весь флоу — тоже вроде работает
— Но никто не проверяет, как модули работают вместе
— Баги в интеграции всплывают только на E2E — когда уже поздно

🔍 Признаки:

— «Юниты зелёные, но на проде всё падает»
— Долгая отладка E2E-тестов: непонятно, где именно сломалось
— Проблемы с API, базами данных, очередями находят только пользователи
— Между «функция работает» и «система работает» — чёрная дыра

🔤 Почему так получается:

Интеграционные тесты сложнее писать: нужны моки, стабы, тестовые окружения. Проще написать ещё один юнит или E2E. Но именно на стыках модулей и живут самые коварные баги.

🔗 Ссылка на первую часть, где разобрали песочные часы ⌛️

🔹 Основы IT для непрограммистов
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

🐸 Библиотека тестировщика

#теория_на_пальцах
Please open Telegram to view this post
VIEW IN TELEGRAM
4🥰2🤩2
🔥 Когда job-очередь превращается в кладбище задач



На тесте проблема не проявилась: низкая нагрузка, стабильный sandbox, отсутствие сценариев «внешний сервис не отвечает».


Что обязательно проверять:

таймауты и поведение при зависании API;
retry-политику и максимальное время обработки задачи;
наличие DLQ и алертов на его переполнение;
мониторинг очередей: размер, возраст задач, время обработки;
поведение при перегрузке (10×, 100× нагрузка);
идемпотентность — нет ли дублей и потерянных операций.

🐸 Библиотека тестировщика

#разбор_полетов
Please open Telegram to view this post
VIEW IN TELEGRAM
3🥰2🤩2
selenium-part3.png
617.8 KB
📎 Selenium — Java Cheat Sheet

Удобная шпаргалка по Selenium для тех, кто работает с Java и автоматизацией UI-тестов. В ней собраны самые нужные вещи: локаторы, динамические XPath, операции с элементами, ожидания, работа с окнами и аннотации TestNG/JUnit.

Подходит как junior-тестировщикам, так и тем, кто хочет ускорить написание автотестов.

🔹 Основы IT для непрограммистов
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

🐸 Библиотека тестировщика

#артефакт
Please open Telegram to view this post
VIEW IN TELEGRAM
👏5👍2🤩2
QA в мире AI: новый уровень

Тестирование ML-моделей — это не просто прокликивание UI. Это проверка датасетов, валидация метрик и оценка точности.

Без математики здесь никуда.

Хотите стать QA, который не боится слов «регрессия» и «матрица»? Залетайте на наш обновленный курс с живыми вебинарами.

Разбираем на практике:

— как работать с многомерными массивами данных;
— что такое линейная регрессия и как её валидировать;
— как использовать SVD-разложение для анализа данных.

Первый вебинар уже прошёл, но запись доступна.

Успеть до 9 декабря:
👉 https://clc.to/LojFzw
🤩3🥰2
🔴 Playwright 1.57.0 — свежее обновление

Вышел новый релиз Playwright 1.57.0. Главное, что в нём стоит знать:

Новые режимы обновления снапшотов:

Появилась поддержка:
• overwrite — полностью перезаписывает,
• 3-way merge — аккуратно вносит изменения.

Это уменьшает конфликты в Git и делает визуальные тесты стабильнее.

Улучшения стабильности и работы с тестовыми файлами:

Чище диффы, меньше случайных перезаписей и более предсказуемые CI-прогоны.

📎 Источник

🐸 Библиотека тестировщика

#release_notes
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3🥰2🤩2
🔺 Анти-ппатерн: «Реверсивная пирамида»

Это структура, где основная масса тестов — интеграционные. Юнитов мало, E2E немного, но середина раздута и нестабильна.

В чём проблема:

— Интеграционные тесты начинают писать «на всё» — они дороже юнитов и медленнее.
— Сценарии слишком широкие: контроллер + сервис + база + кэш.
— Отладка превращается в поиск иголки в стоге — падает много, причина одна.
— Пайплайн растёт, прогоны удлиняются, а ценности меньше, чем кажется.

🔍 Признаки:

— «У нас огромный пакет API-тестов, но юнитов почти нет».
— Любая правка в схеме данных ломает десятки–сотни проверок.
— Граница ответственности размыта: тесты проверяют всё сразу.

💡 Как лечить:

— Строить нормальную пирамиду: много юнитов → умеренно интеграционных → минимум необходимого E2E.
— Чётко ограничивать ответственность каждого уровня.
— Интеграционные тесты — только для критических связей, а не для всего приложения.

🔹 Основы IT для непрограммистов
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

🐸 Библиотека тестировщика

#теория_на_пальцах
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩51🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
🌐 Визуализация JSON в диаграммы

Расширение для VS Code, которое превращает JSON-файлы в интерактивные графы: объекты, массивы и значения становятся связанными узлами.

🔴 Чем полезно для QA:

• Быстро понять структуру сложных API-ответов без чтения кода
• Находить вложенности и связи между объектами визуально
• Проверять payload запросов и responses — ошибки видно сразу
• Удобно для дебага: где именно сломалась структура данных
• Работает с большими JSON — не нужно скроллить тысячи строк

Установка: открыть JSON → кликнуть иконку JSON Crack в menubar → получить граф.

Особенно полезно при тестировании REST API, анализе логов и валидации контрактов между сервисами.

🔹 Основы IT для непрограммистов
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

🐸 Библиотека тестировщика

#тест_драйв
Please open Telegram to view this post
VIEW IN TELEGRAM
👏6🤩2❤‍🔥1👍1🥰1
🎭 PM говорит: «Это можно не тестировать, никто так не делает»

Кейс:


На продакшене форма регистрации. PM просит пропустить тестирование сценария: «Пользователь вводит email с +алиасом ([email protected])».

Аргумент:

«Обычные люди так не делают, только тестировщики»


Но RFC 5322 разрешает + в email. Gmail, Outlook, ProtonMail поддерживают. А ваша валидация — режет.

Что вы делаете:

👍 — Тестирую всё равно, фиксирую баг
🤩 — Показываю статистику: сколько юзеров используют +alias
🥰 — Соглашаюсь, но добавляю в smoke после релиза
❤️ — Предлагаю A/B тест: смотрим реальную конверсию

🐸 Библиотека тестировщика

#стендап_qa
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰9🤩8👍63
Что такое позитивное и негативное тестирование

"Positive testing — это проверка что приложение работает правильно с валидными данными. Например, если поле принимает числа от 0 до 99999, я ввожу валидное значение вроде 500 и проверяю что оно принимается.

Negative testing — проверяю как система ведёт себя с невалидными данными: буквами, отрицательными числами, спецсимволами, значениями за границами. Система не должна упасть — она должна показать понятную ошибку.

Для тест-дизайна использую Boundary Value Analysis — тестирую граничные значения вроде -1, 0, 1 и 99998, 99999, 100000. И Equivalence Partitioning — делю входные данные на классы эквивалентности: валидные (0-99999) и невалидные (отрицательные, больше 99999, строки)."


🐸 Библиотека тестировщика

#карьерный_трек #junior
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍4🤩2🥰1
js_array_methods_cheatsheet.pdf
103.7 KB
🚩 JavaScript: методы массивов

Полная шпаргалка по базовым методам массивов в JavaScript — must-have для автоматизации тестирования.

Что внутри:

• push() / pop() — добавление и удаление элементов
• map() — преобразование каждого элемента
• filter() — фильтрация по условию
• find() — поиск первого элемента
• includes() — проверка наличия


🐸 Библиотека тестировщика

#артефакт #js
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩5🥰2👍1
📁 Промокод, который работал бесконечно

После запуска акции стало ясно: один и тот же одноразовый промокод используют сотни раз. Причина оказалась не в утечке — а в ошибке логики.

🔍 Суть проблемы:

Проверка «использовал ли пользователь промокод» выполнялась только через cookie.
На сервере не было ни проверки, ни учета.

Что делал пользователь:
— инкогнито → cookie нет → промокод снова активен
— другой браузер → снова работает
— чистка cookies → система «забыла» использование

Итог: бесконечные скидки → прямые убытки.


👀 Почему так бывает:

— доверие к клиенту (валидация только в браузере)
— нет проверки на уровне API: использовал ли этот user / email промокод
— отсутствие негативных сценариев в тест-плане
— привязка к сессии вместо user_id

Тестируете такие кейсы:

👍 — Да, API и негативные сценарии
❤️ — Только функциональные проверки
😁 — Пару кликов руками
🔥 — Теперь точно добавлю в тест-план

🐸 Библиотека тестировщика

#разбор_полетов
Please open Telegram to view this post
VIEW IN TELEGRAM
👍94🔥3😁1
The Complete Scrum Guide.pdf
398.8 KB
⭐️ Scrum в реальной работе

Scrum-команды часто выглядят одинаково снаружи, но на практике процессы сильно отличаются от того, что описано в оригинальном руководстве.

Поэтому иногда полезно вернуться к источнику — чтобы понимать, как фреймворк задуман и какие обязанности у ролей на самом деле.

🔗 Прикрепили русскоязычный перевод Scrum Guide — короткий документ, который стоит прочитать без адаптаций.

🐸 Библиотека тестировщика

#карьерный_трек #scrum
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰5👍2🤩2
Что передаём по HTTP-методам

🟡 GET — получить данные

Передаём: параметры в URL.


/api/products?category=books&page=2


🟡 POST — создать ресурс / выполнить действие

Передаём: тело запроса (JSON, формы).

🟡 PUT — полное обновление ресурса

Передаём: тело запроса (заменяет весь объект)

🟡 PATCH — частичное обновление

Передаём: тело запроса (только изменённые поля)

🟡 DELETE — удаление

Передаём: ID в URL, иногда — тело

🟡 HEAD — та же логика GET, но без тела ответа

🟡 OPTIONS — узнать, какие методы разрешены

Передаём: только URL.

🟡 CONNECT / TRACE

CONNECT — создаёт туннель (SSL).
TRACE — отладка, возвращает запрос обратно.

🔹 Основы IT для непрограммистов
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

🐸 Библиотека тестировщика

#теория_на_пальцах
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰8🤩2
😳 Когда кеш работает… слишком хорошо

Реальный кейс:

После оптимизации сервис стал работать в 5 раз быстрее. Метрики зелёные, пользователи довольны, прод молчит — красота.

Но через неделю начинается:

💥 Один пользователь видит iPhone за 89 000₽, другой — за 102 000₽
💥 Товар «в наличии» в каталоге, но недоступен в корзине
💥 TTL кеша установлен на 5 минут, но данные не обновляются по 2 часа
💥 После изменения цены админом старое значение живёт ещё полдня


Ваши действия:

👍 — Воспроизвожу: отключаю кеш, проверяю данные напрямую из БД, сравниваю с поведением на проде

🤩 — Иду к разработчику

🥰 — Завожу баг со скриншотами и шагами воспроизведения

❤️ — Поднимаю вопрос на ретро

🐸 Библиотека тестировщика

#разбор_полетов
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🥰4🤩21