Библиотека тестировщика
3.16K subscribers
435 photos
261 videos
22 files
405 links
Библиотека для тестировщика и QA. По всем вопросам @evgenycarter
Download Telegram
SQL для тестировщиков: 5 полезных запросов

SQL - это язык для работы с реляционными базами данных (например, MySQL, PostgreSQL, Oracle). SQL является отличным инструментом для проверки целостности данных, анализа связей между таблицами и поиска скрытых багов.

1. Возвращаем набор данных из базы (SELECT)
Когда использовать: После регистрации, создания заказа и т.д. - проверяем, что пользователь/заказ создался, смотрим на корректность и полноту данных

Найти пользователя по email:
SELECT * (Выбираем все поля записи)
FROM users (Из таблицы users)
WHERE email = '[email protected]'; (Где email равен указанному значению)


Проверить последний заказ:
SELECT * (Выбираем все поля записи)
FROM orders (Из таблицы orders)
ORDER BY created_at DESC (Сортируем по дате создания (новые сначала))
LIMIT 1; (Ограничиваем результат одной записью)

2. Фильтрация данных по условиям (WHERE)
Когда использовать: для поиска и анализа ошибочных записей, для выборочной проверки данных по определённым критериям

Найти неоплаченные заказы старше 3 дней:
SELECT * (Выбираем все поля заказов)
FROM orders (Из таблицы orders)
WHERE status = 'unpaid' (Где статус "неоплачен")
AND created_at < NOW() - INTERVAL 3 DAY; (И дата создания старше 3 дней от текущего момента)


Найти пользователей без подтвержденного email’a:
SELECT id, email (Выбираем только ID и email)
FROM users (Из таблицы users)
WHERE email_verified = false; (Где email не подтверждён)


3. Проверка количества записей (COUNT)
Когда использовать: для проверки массовых операций

Сколько пользователей зарегистрировалось сегодня:
SELECT COUNT(*) (Считаем общее количество записей)
FROM users (В таблице users)
WHERE DATE(created_at) = CURRENT_DATE; (Где дата регистрации = текущий день)


4. Обновление тестовых данных (UPDATE)
Важно! Используйте только в тестовых базах и всегда делайте резервную копию перед массовыми изменениями

Сбросить пароль тестового пользователя:
UPDATE users (Обновляем таблицу users)
SET password = 'test123' (Задаём новое значение для поля password)
WHERE email = '[email protected]'; (Условие: только для пользователя с этим email)


Изменить статус заказа:
UPDATE orders (Обновляем таблицу orders)
SET status = 'completed' (Меняем статус на "completed")
WHERE id = 12345; (Условие: только заказ с ID 12345)


5. Удаление тестовых данных (DELETE)
Осторожно! Используйте только в тестовых базах и всегда делайте резервную копию перед массовыми изменениями. Всегда сначала делайте SELECT с тем же условием

Удаление тестовых заказов:
DELETE FROM orders (Удаляем записи из таблицы orders)
WHERE user_id IN ( (Где user_id соответствует…)
SELECT id FROM users (…ID из таблицы users)
WHERE email LIKE '%test%' (…для email с подстрокой "test»)
);


Как тренироваться?
На помощь приходят бесплатные тренажеры, например:

- https://sqlbolt.com/
- https://sqlzoo.net/

#qa #testing

Подпишись👉 @testlab_qa
👍43
Новый сезон конференции Podlodka QA Crew пройдет с 1 по 5 сентября.

В фокусе — инструменты, которые делают тестирование быстрее, качественнее и удобнее.

В программе:

💡Как раскрыть потенциал Postman и ускорить обратную связь вместе с Ариной Ладесовой (Payler).

🪄Внедрение ИИ для генерации тестов без лишней боли — с Натальей Петровской.

📱Современные инструменты мобильного тестировщика — практические кейсы от Елены Фёдоровой (Garage Eight).

🔍 Observability автотестов и мониторинг с Кириллом Ивлиевым (Работа.ру).

Знания, которые легко применять в работе!

🔗 Подробности и регистрация по ссылке

P.S: Для подписчиков скидка 500 р по промокоду qa_crew_14_EV9xC0
👁️‍🗨️ Agile vs Waterfall

Всем привет! Давайте разберёмся, в чём разница между Agile (Scrum/Kanban) и Waterfall, и как это влияет на нашу работу.

🌊 Waterfall («Водопад»)
Как работает:
1. Этапы идут строго друг за другом (как вода в водопаде):
Требования → Дизайн → Разработка → Тестирование → Внедрение → Поддержка
2. Тестирование - в самом конце (когда весь продукт уже готов)

Плюсы для QA:
Чёткий план (знаем все требования заранее)
Участники проекта, не задействованные на определенной фазе, могут переключаться на другие проекты
Подходит для госпроектов, систем, где нельзя менять требования и для модернизации уже существующих проектов

Минусы:
Если баг найден поздно - исправлять дорого
Нет гибкости

🔄 Agile (Scrum, Kanban)
Как работает:
1. Разбиваем проект на маленькие кусочки (итерации по 2-4 недели)
2. Тестируем каждую фичу сразу (не ждём конца разработки)

Scrum
- Есть спринты (обычно 2 недели)
- Каждый день daily (короткая ежедневная встреча команды разработки, которая проходит в одно и то же время. На ней каждый участник команды отвечает на вопросы «Что было сделано вчера? Что буду делать сегодня? Есть ли что-то, что может помешать работе над задачами спринта?»)
- Тестировщик встроен в команду (не отдельный «отдел»)

Kanban
- Нет спринтов - гибкий поток задач
- Задачи висят на доске, их прогресс наглядно виден по колонкам статусов (To do → In Progress…)

Плюсы для QA:
Быстрая обратная связь
Раннее вовлечение в процесс
Постепенное тестирование

Минусы:
Нужно быстро адаптироваться (требования могут меняться)
Много рутины (ежедневные митинги, ретроспективы)

⚖️ Что лучше для тестировщика?

- Скорость: Waterfall - медленно, Agile - быстро
- Гибкость: Waterfall - нет, Agile - да
- Риски: Waterfall - баги находятся поздно, Agile - ловим баги в процессе разработки
- Документация: Waterfall - много, Agile - минимум

автор: Aleksandra Primako

#qa #testing

Подпишись👉 @testlab_qa
1👍41
Пилотное тестирование

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

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

https://artoftesting.com/pilot-testing

#qa #testing

Подпишись👉 @testlab_qa
👍2
📕 Архитектура и написание backend тестов для разработчиков Java, QA инженеров, автоматизаторов, QA Lead и DevOps-специалистов

На открытом уроке 17 сентября в 20:00 мск мы погрузимся в тонкости построения архитектуры надежных и понятных backend-тестов:

📗 На вебинаре разберём:
1. Использование Java и RestAssured для API-тестирования, приёмы структурирования и переиспользования кода.
2. Архитектурные принципы построения надёжных тестов.

📘 В результате на практике освоите построение надежных backend-тестов, научитесь писать чистый, гибкий и поддерживаемый код на Java с RestAssured и получите архитектурные шаблоны и рабочие примеры для своих проектов.

👉 Регистрация и подробности о курсе Java QA Engineer. Professional: https://vk.cc/cPza2t

Все участники открытого урока получат скидку на курс "Java QA Engineer. Professional"

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
#qa #testing

Подпишись👉 @testlab_qa
😁12👍2❤‍🔥1
🐳 Docker для тестировщиков

📚 Что такое Docker?
Docker - это платформа для контейнеризации приложений.
Контейнер - это легковесная виртуальная «коробка», куда упакованы:
- Код приложения
- Библиотеки
- Настройки окружения

В отличие от виртуальных машин, контейнеры не эмулируют всю ОС, а используют ядро хоста, что делает их быстрыми и компактными.

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

Зачем Docker тестировщику?
1. Идентичное окружение на всех этапа
Проблема:
«На моём ноуте тесты проходят, а на CI/CD падают!»
Решение:
Docker гарантирует, что тесты запускаются в одинаковой среде (версии Python/Java, БД)

2. Быстрый подъем инфраструктуры
Пример:
Вместо ручной установки PostgreSQL + Redis + Kafka:
docker-compose up -d

3. Тестирование в изоляции
- Можно запускать параллельные тесты в разных контейнерах
- Тесты не влияют на основную систему (например, не засоряют БД)

4. Эмуляция продакшена
- Тестирование на точной копии продакшен-окружения
- Проверка конфигов, переменных среды, сетевых правил

👁️ Ключевые концепции Docker
1. Образ (Image)
Шаблон для создания контейнеров

2. Контейнер
- Изолированная «коробка» с программой внутри (например, с вашим тестовым фреймворком или базой данных)
- Можно создать/остановить/удалить

3. Dockerfile
Инструкция для сборки образа

4. Docker Compose
Инструкция для управления несколькими сервисами (БД, кеш, API)

Почему Docker стоит освоить?
🔹 Стандартизация - больше никаких «на моей машине работает»
🔹 Экономия времени - окружение разворачивается за минуты
🔹 Гибкость - можно тестировать разные версии ПО

Docker - не панацея, но незаменимый помощник в арсенале современного тестировщика 🛠️

автор: Aleksandra Primako

#qa #testing

Подпишись👉 @testlab_qa
👍7
Приёмы в работе с нейросетями. Шпаргалка для QA инженеров

Работа с ChatGPT и другими нейросетями может стать настоящим ускорителем для QA. Но многое зависит от того, как именно формулировать запросы. Ниже набор практичных приёмов, которые помогут получать более точные, полезные и структурированные ответы если добавлять их в начало промпта.

🥎 1. only code
Если нужно только решение в коде (без воды и комментариев), начинайте запрос с этого слова. Удобно для сниппетов автотестов или SQL-запросов.

🎾 2. explain code
Используйте, когда хотите понять незнакомый участок кода или SQL. Нейросеть разберёт всё построчно и объяснит, что и зачем используется. Отлично подходит для изучения автотестов или чужих скриптов.

🎈 3. best practice
Добавляйте к запросу, если хотите получить решение по лучшим практикам: например, как правильно оформить Page Object в Playwright или структуру API-тестов.

4. senior mode
Формулируйте запрос так, будто вам отвечает синьор QA/разработчик. Ответы будут глубже и с пояснениями «почему именно так».

🍬 5. simple 10
Если тема сложная (например, про SLA/OLA или баг-трекинг), добавьте это и получите объяснение простыми словами, как для 10-летнего ребёнка.

🍪 6. fix my bug
Подходит, когда у вас падает автотест или SQL-запрос. Нейросеть предложит исправления. Работает не всегда идеально, но может подсветить, где ошибка.

💠 7. optimize for performance
Нужен для случаев, когда вы сомневаетесь, что ваш тест или скрипт написан оптимально. Сеть предложит более быстрые или лаконичные варианты.

🍭 8. add comments
Приём для длинных кусков кода. Нейросеть разобьёт их на логические блоки с комментариями, что облегчает ревью и поддержку автотестов.

🐙 9. generate test cases
Нейросеть умеет быстро накидывать тест-кейсы по описанию функционала. Достаточно написать:
generate test cases for password recovery form
И вы получите набор позитивных и негативных сценариев.

🧊 10. bug report format
Если нужно красиво оформить дефект, пишите:
bug report format: login button not clickable
И получите баг-репорт с шагами, фактическим/ожидаемым результатом.

🍩 11. qa checklist
Запрос вида:
qa checklist for e-commerce cart page
Сгенерирует список проверок для функционала, экономя время на подготовке.

🧁 12. compare
Хорошо работает для сравнения инструментов:
compare Cypress vs Playwright for e2e testing
В результате получите таблицу с плюсами и минусами.

🍼 13. mock data
Используйте для генерации тестовых данных: пользователей, заказов, JSON-ответов. Особенно удобно для нагрузочного или интеграционного тестирования.

Примечание:
only code (с пробелом, в нижнем регистре) работает наиболее стабильно.
CodeOnly тоже понимается, но иногда GPT добавляет лишние слова.
code_only срабатывает хуже, и может появляться объяснение вместе с кодом.

Итог
Помните: QA должен уметь критически оценивать результат. Нейросеть лишь ускоряет рутину
👇 🤝 🫶

Автор: Vladlen Tsiganenko

#qa #testing

Подпишись👉 @testlab_qa
🔥7
🔥От тестировщика к эксперту по нагрузочному тестированию! 🚀

Нагрузочное тестирование — это не просто тренд, это актуальная потребность на рынке IT. Пройдите вступительное тестирование, проверьте свои знания и получите скидку на курс «Нагрузочное тестирование» в OTUS.

Вы научитесь:

Работать с инструментами JMeter, Gatling, k6.io
Настроить автоматизацию тестов через CI/CD
Мониторить систему с помощью Grafana и Prometheus
Планировать тесты для реальных рабочих нагрузок

📌 Пройдите тест и получите скидку на курс! 🎓 Подробности уточняйте у менеджера

🚀 Не упустите шанс стать экспертом в нагрузочном тестировании и повысить свою квалификацию!

👉 Пройти тестирование https://vk.cc/cQmdqB

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Топ-10 полезных расширений для браузера в арсенале QA-инженера

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

Однако стандартного функционала браузера часто недостаточно. Именно здесь на помощь приходят расширения. Они позволяют автоматизировать рутинные действия (вроде очистки кэша), моментально проводить визуальные замеры, генерировать сложные тестовые данные и быстро фиксировать найденные дефекты.

В этой статье мы рассмотрим список из 10 расширений, которые значительно повысят вашу продуктивность, начиная с простого, но часто необходимого инструмента для контроля текстовых данных.

Quick Char Count
Clear Cache
Dimensions
WhatFont
EditThisCookie
Awesome Screenshot
Wappalyzer
Bug Magnet
Exploratory Testing Chrome Extension
Lighthouse

https://habr.com/ru/articles/956060/

#qa #testing

Подпишись👉 @testlab_qa
2👍2
#qa #testing

Подпишись👉 @testlab_qa
😁111👏1
🤖ИИ в работе qa инженера: помощник или источник хаоса?

ИИ повсюду, и тестирование не стало исключением. От генерации тест-кейсов с помощью ИИ до предиктивного анализа дефектов и автономных агентов — нам продают будущее, где машины якобы понимают качество лучше, чем когда-либо могли люди. Но за модными терминами и демонстрациями скрываются реальные вызовы и риски, которые нельзя игнорировать.

Мы разберём не только технические ловушки, но и этические слепые зоны, риски чрезмерной зависимости, а также последствия того, что ИИ начинают воспринимать как «магическую коробку». Как тестировать сами системы ИИ? Что происходит, когда предвзятость проникает в модели, которым мы доверяем оценку качества продукта? И какие ограничения нужно установить, прежде чем делегировать принятие решений машинам?

Что будет рассмотрено:
- где ИИ реально помогает тестированию, а где создаёт иллюзию эффективности;
- примеры провалов и неожиданных последствий ИИ-инструментов;
- как обнаружить и протестировать предвзятость в ML-моделях;
- почему «магия» ИИ требует трезвого инженерного взгляда.

Регистрация и подробности о курсе: https://vk.cc/cQMKHz

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Подборка бесплатных игр, которые помогают развивать QA-майндсет:

1. CyberStart Go — симуляция задач по кибербезопасности, развивающая логику и внимание.
https://go.cyberstart.com

2. Cognitive Fun! — бесплатные тренажёры для памяти, внимания и логики (можно считать «QA-гимнастикой»).
https://cognitivefun.net

3. A Dark Room (browser) — текстовая игра на логику и планирование.
https://adarkroom.doublespeakgames.com/

4. Untrusted — текстовое приключение, где нужно редактировать JavaScript-код, чтобы пройти уровень.
https://alexnisnevich.github.io/untrusted/

5. CodeCombat — RPG-игра, где нужно писать код для управления персонажем.
https://codecombat.com

6. World’s Biggest Pac-Man — вариация классической игры, которая тренирует быстрое принятие решений и распознавание паттернов.
https://worldsbiggestpacman.com/

7. Chess puzzles — ежедневные шахматные задачи онлайн, полезные для развития внимания, стратегии и умения предугадывать ошибки.
https://www.chess.com/puzzles

#qa #testing

Подпишись👉 @testlab_qa
🔥2👍1