3196
Библиотека для тестировщика и QA. По всем вопросам @evgenycarter
⚙️ K6 и Gatling: нагрузка по всем фронтам — gRPC, WebSocket и HTTP
Если ты работаешь с микросервисами, то знаешь, как сложно бывает грамотно нагрузить всё сразу — и gRPC, и WebSocket, и HTTP.
Разберём, как сделать это красиво и эффективно с помощью K6 и Gatling.
🔥29 апреля в 20:00 мск. приглашаем на бесплатный вебинар «Gatling и K6: тесты для gRPC, WebSocket и HTTP»
Что сделаем на занятии:
✅ создадим и запустим комбинированные тесты для gRPC, WebSocket и HTTP
✅ сравним инструменты K6 и Gatling в прямом эфире
✅ подготовим нагрузку на микросервис — прямо во время вебинара
✅ покажем, как запускать сценарии параллельно для комплексного моделирования
🎁 В конце — готовые скрипты, которые можно взять в работу.
👉 Регистрируйся: https://vk.cc/cL4PRS
Занятие приурочено к старту курса “Нагрузочное тестирование”, на котором вы научитесь составлять методику, разрабатывать скрипты, запускать тесты и настраивать мониторинг нагрузочного тестирования.Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🧪 Сегодня хочу поговорить о функциональном тестировании API.
Очень часто вижу, как ручные тестировщики не используют Postman/REST Client на максимум. А ведь с его помощью можно реально ускорить рутину.
Например, вместо того чтобы вручную дергать эндпоинты с одними и теми же параметрами — соберите коллекции, настройте переменные окружения, добавьте предусловия и пост-обработку. Да, немного времени на настройку — но потом просто нажимаете “Send” и смотрите результат.
📌 А если вы еще не используете тесты прямо в Postman, обязательно попробуйте:
pm.test("Статус 200", function () {
pm.response.to.have.status(200);
});
pm.test("Ответ содержит userId", function () {
const jsonData = pm.response.json();
pm.expect(jsonData).to.have.property("userId");
});
👨💻 Сегодня я покажу, как быстро проверить API без Postman и других инструментов
Обычно, когда тестировщики слышат «проверь API», рука сама тянется к Postman или Swagger. Но что если нужно быстро глянуть ответ эндпоинта, а под рукой — только терминал?
В таких случаях я использую curl. Вот пара примеров, которые спасают мне время:
🔹 GET-запрос:
curl -X GET "https://api.example.com/users" -H "Authorization: Bearer <токен>"
curl -X POST "https://api.example.com/login" \
-H "Content-Type: application/json" \
-d '{"username": "qa_user", "password": "123456"}'
curl -o response.json "https://api.example.com/data"
curl в своей практике? Напиши, какие команды у тебя в закладках.
Хотите освоить программирование или сменить работу в IT?
А вы готовы всего за час создать и опубликовать целое приложение?
Отлично! Тогда присоединяйтесь к онлайн-конференции «Как создать первый проект на Python и Java с нуля»!
Новички в IT узнают:
- какой язык программирования лучше выбрать для старта
- как быстро создать и развернуть приложение
- как работают Python и Java на практике
- как размещать код на GitHub и работать с репозиториями
- какие дополнительные инструменты использовать для профессионального роста
Программисты на других языках, и те, кто ищет новые возможности в IT:
- поймёте, какие IT-технологии сейчас востребованы
- узнаете, какие навыки прокачивать для успешной смены деятельности
- отработаете навыки быстрой сборки и быстрого развёртывания проекта
- узнаете о новых возможностях для обучения и развития
Также вас ждёт квиз с призами!
Спикеры:
Сурен Хоренян: бэкенд-разработчик на Python, руководитель команды в «VK Рекламе»
Сергей Прощаев: Java-разработчик
Бонус! Скидка 7% на любой курс OTUS и полезные материалы в подарок!
18 апреля, 19:00 МСК
Бесплатно
Записаться на событие - https://otus.pw/fTqD/?erid=2W5zFG9Qroz
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
🔍 Что спрашивать на собеседовании QA'шнику: мой топ-5 вопросов
Сегодня покажу вам свои любимые вопросы, которые я задаю кандидатам на позицию тестировщика. Эти вопросы помогают быстро понять уровень человека — как технический, так и общий подход к работе.
1. Что ты будешь делать, если продакшн упал, а разработчика нет на месте?
Смотрю на реакцию: паникует или предлагает конкретные действия (логи, откат, алерты).
2. Как ты определяешь, что баг действительно критичный?
Тут важно мышление. Вижу ли я понимание бизнес-приоритетов или просто «красный экран = P0»?
3. Опиши самый сложный баг, который ты ловил. Как нашёл?
Оцениваю глубину анализа и навыки коммуникации — баг же надо не только найти, но и донести.
4. Как ты тестируешь без документации?
Умеет ли кандидат работать с продуктом «руками», искать баги через исследование?
5. Когда автоматизация вредна?
Идея — узнать, понимает ли, где ROI автоматизации низкий и когда ручное тестирование выгоднее.
Эти вопросы — не про запугать. Они про реальный опыт и зрелость. Часто кандидат сам раскрывается намного лучше, чем при стандартных вопросах вроде «что такое баг-репорт».
А какие вопросы вы задаёте/встречали на собеседованиях? Делитесь в комментариях — соберём народный список!
#qa #testing
Подпишись👉 @testlab_qa
Подборка Telegram каналов для программистов
/channel/bash_srv Bash Советы
/channel/win_sysadmin Системный Администратор Windows
/channel/lifeproger Жизнь программиста. Авторский канал.
/channel/devopslib Библиотека девопса | DevOps, SRE, Sysadmin
/channel/rabota1C_rus Вакансии для программистов 1С
Системное администрирование 📌
/channel/sysadmin_girl Девочка Сисадмин
/channel/srv_admin_linux Админские угодья
/channel/linux_srv Типичный Сисадмин
/channel/linux_odmin Linux: Системный администратор
/channel/devops_star DevOps Star (Звезда Девопса)
/channel/i_linux Системный администратор
/channel/linuxchmod Linux
/channel/sys_adminos Системный Администратор
/channel/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
/channel/sysadminof Книги для админов, полезные материалы
/channel/i_odmin Все для системного администратора
/channel/i_odmin_book Библиотека Системного Администратора
/channel/i_odmin_chat Чат системных администраторов
/channel/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
/channel/sysadminoff Новости Линукс Linux
1C разработка 📌
/channel/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
/channel/DevLab1C 1С:Предприятие 8
Программирование C++📌
/channel/cpp_lib Библиотека C/C++ разработчика
/channel/cpp_knigi Книги для программистов C/C++
/channel/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
/channel/pythonofff Python академия. Учи Python быстро и легко🐍
/channel/BookPython Библиотека Python разработчика
/channel/python_real Python подборки на русском и английском
/channel/python_360 Книги по Python Rus
Java разработка 📌
/channel/BookJava Библиотека Java разработчика
/channel/java_360 Книги по Java Rus
/channel/java_geek Учим Java на примерах
GitHub Сообщество 📌
/channel/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
/channel/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
/channel/developer_mobila Мобильная разработка
/channel/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
/channel/frontend_1 Подборки для frontend разработчиков
/channel/frontend_sovet Frontend советы, примеры и практика!
/channel/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
/channel/game_devv Все о разработке игр
Библиотеки 📌
/channel/book_for_dev Книги для программистов Rus
/channel/programmist_of Книги по программированию
/channel/proglb Библиотека программиста
/channel/bfbook Книги для программистов
/channel/books_reserv Книги для программистов
БигДата, машинное обучение 📌
/channel/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
/channel/bookflow Лекции, видеоуроки, доклады с IT конференций
/channel/coddy_academy Полезные советы по программированию
/channel/rust_lib Полезный контент по программированию на Rust
/channel/golang_lib Библиотека Go (Golang) разработчика
/channel/itmozg Программисты, дизайнеры, новости из мира IT
/channel/php_lib Библиотека PHP программиста 👨🏼💻👩💻
/channel/nodejs_lib Подборки по Node js и все что с ним связано
/channel/ruby_lib Библиотека Ruby программиста
QA, тестирование 📌
/channel/testlab_qa Библиотека тестировщика
Шутки программистов 📌
/channel/itumor Шутки программистов
Защита, взлом, безопасность 📌
/channel/thehaking Канал о кибербезопасности
/channel/xakep_2 Хакер Free
Книги, статьи для дизайнеров 📌
/channel/ux_web Статьи, книги для дизайнеров
Математика 📌
/channel/Pomatematike Канал по математике
/channel/phis_mat Обучающие видео, книги по Физике и Математике
Excel лайфхак📌
/channel/Excel_lifehack
/channel/tikon_1 Новости высоких технологий, науки и техники💡
/channel/mir_teh Мир технологий (Technology World)
Вакансии 📌
/channel/sysadmin_rabota Системный Администратор
/channel/progjob Вакансии в IT
Автоматизация тестирования, которая не ломается при первом редизайне
Меня зовут Артем, я эксперт по тестированию в компании TData — разработчике высоконагруженных корпоративных решений для работы с данными в реальном времени. Мы создаём ПО, где особенно важны стабильность, отказоустойчивость и предсказуемость поведения — вне зависимости от нагрузки и сложности сценариев.
Автоматизация тестирования для нас — не просто способ снять нагрузку с ручных тестировщиков, а часть инженерной культуры. В этой статье поделюсь тем, как мы выстраивали автоматизацию: с чего начали, почему стартовали с UI, какие инструменты прижились, как справлялись с нестабильными тестами. Давайте разберёмся, как не заблудиться на этом увлекательном, но местами запутанном пути.
https://habr.com/ru/companies/rostelecom/articles/894074/
#qa #testing
Подпишись👉 @testlab_qa
Как убедиться, что баг исправлен?
Сегодня поговорим о важной теме – как правильно проверять баг после его исправления. Часто разработчик говорит: "Исправил, проверяй!", и тут важно не просто кликнуть на кнопку, а провести грамотную регрессию.
🔍 Как правильно проверять исправленный баг?
1️⃣ Проверяем, что баг действительно исправлен.
– Берём шаги воспроизведения из бага.
– Повторяем их в той же среде и на той же версии, где было исправление.
– Сравниваем результат с ожидаемым поведением.
2️⃣ Проверяем окрестности бага.
– Часто фиксы ломают соседний функционал. Например, исправили баг в авторизации – проверьте регистрацию, сброс пароля.
3️⃣ Проверяем на разных данных.
– Если баг связан с вводом данных, попробуйте крайние случаи: длинные строки, спецсимволы, пустые значения.
4️⃣ Тестируем в разных окружениях.
– Проверьте на разных браузерах, устройствах, API-запросах (если актуально).
5️⃣ Смотрим логи и консоль.
– Иногда баг "ушёл в тень" – UI работает, но в логах ошибки. Проверьте DevTools или серверные логи.
6️⃣ Запускаем регрессию.
– Если баг был в сложном сценарии, стоит перепройти весь сценарий целиком.
7️⃣ Оцениваем влияние на производительность.
– Если был сложный рефакторинг, проверьте, не замедлился ли интерфейс или API.
💡 Совет: Важно не просто убедиться, что баг "пропал", но и что он не привёл к новым проблемам.
Как вы проверяете баги после фикса? Делитесь своими лайфхаками в комментариях! 👇
#qa #testing
Подпишись👉 @testlab_qa
🛠️ Как тестировщику доказать баг?
Бывало такое, что ты нашел баг, но разработчик говорит: "Это не баг, а фича", или "Не могу воспроизвести, у меня все работает"? Сегодня разберем, как аргументированно доказать существование бага и избежать холиваров с разработчиками.
✅ 1. Четкая и полная баг-репортация
Хороший баг-репорт — 90% успеха. Опиши:
- Ожидаемый результат: Как система должна работать.
- Фактический результат: Как работает на самом деле.
- Шаги воспроизведения: Детальный сценарий с примерами.
- Среда тестирования: ОС, браузер, версия ПО, устройство и т. д.
- Лог-файлы, скриншоты, видео: Визуальное подтверждение бага.
✅ 2. Доказательство на данных
Если баг связан с логикой работы системы, можно показать несоответствия в базе данных, логах или API-запросах. Например, разница между сохраненными и отображаемыми данными.
✅ 3. Использование аналогий
Некоторые баги сложно объяснить словами. В таком случае помогают аналогии:
"Представь, ты заказал кофе, а тебе принесли чай. Вроде тоже напиток, но явно не то, что ожидалось."
✅ 4. Повторное тестирование на разных окружениях
Если разработчик говорит "У меня работает", попробуй:
- Разные браузеры и версии.
- Другое устройство/операционную систему.
- Включение/отключение кэша.
- Использование другого тестового аккаунта.
✅ 5. Сообщение о критичности
Не все баги одинаково важны. Покажи влияние бага:
- Нарушение функциональности?
- Угроза безопасности?
- Блокировка работы пользователя?
👉 Если разработчик все равно не соглашается — можно привлечь тимлида, аналитика или другого QA, чтобы обсудить баг с разных точек зрения.
Как ты доказываешь баги? Поделись в комментариях! 👇
#qa #testing
Подпишись👉 @testlab_qa
🔥 10 Полезных SQL-запросов для Тестировщика
Привет, коллеги! Сегодня хочу поделиться подборкой SQL-запросов, которые спасали меня не раз при тестировании. Если вы работаете с базами данных, то этот список точно пригодится!
📌 1. Проверить количество записей в таблице:
SELECT COUNT(*) FROM users;
SELECT email, COUNT(*)
FROM users
GROUP BY email
HAVING COUNT(*) > 1;
SELECT * FROM orders ORDER BY created_at DESC LIMIT 10;
SELECT * FROM users WHERE email = 'test@example.com';
UPDATE users SET status = 'active' WHERE status = 'pending';
DELETE FROM users WHERE created_at < '2024-01-01';
SELECT, чтобы убедиться, что удалите именно то, что нужно.
SELECT u.name, o.total
FROM users u
JOIN orders o ON u.id = o.user_id;
SELECT * FROM products WHERE name LIKE '%apple%';
SELECT AVG(total) FROM orders;
SELECT * FROM users
WHERE id NOT IN (SELECT user_id FROM orders);
Разработка эффективных тест-кейсов для автоматизации: Руководство для опытных QA-инженеров. Продолжение.dashboard_page.is_loaded()
4. Возможные проблемы и их решения
4.1. Хрупкие тесты
Проблема: Тесты падают при малейшем изменении UI (например, изменился ID кнопки).
Решение: Используйте надежные селекторы:
• XPath, основанный на структуре: //button[text()=Login]
• CSS-селектор по атрибутам: button[data-testid=login]
4.2. Зависимости от тестовых данных
Проблема: Жестко закодированные тестовые данные могут устареть.
Решение: Используйте генерацию данных:import faker
fake = faker.Faker()
print(fake.email()) # Генерирует случайный email
4.3. Долгое выполнение тестов
Решение:
• Параллельное выполнение тестов (pytest-xdist).
• Выборочное выполнение важных тестов (маркировка @pytest.mark.smoke).
• Оптимизация локаторов и ожиданий.
5. Заключение
При проектировании автоматизированных тест-кейсов придерживайтесь:
✅ Ясной структуры (название, шаги, ожидания).
✅ Page Object Model для упрощения кода.
✅ Надежных локаторов и динамических ожиданий.
✅ Минимизации зависимостей между тестами.
✅ Использования параметризации и генерации данных.
Это поможет создать надежную, легко поддерживаемую тестовую систему.
#qa #testing
Подпишись👉 @testlab_qa
Почему баги возвращаются? 🤔
Сегодня разберём одну из самых неприятных ситуаций в тестировании – возвращение багов после фикса. Почему так происходит, и как это предотвратить?
🔹 Разработчик пофиксил, но не проверил код на смежные участки.
Программное обеспечение – это не набор отдельных кусочков, а сложная система. Один фикс может затронуть другие модули. Если не учитывать влияние изменений, баг может всплыть в новом месте.
🔹 Тестировщик проверил только исправленный сценарий.
Частая ошибка – проверить только шаги бага, но не провести регрессию. Нужно учитывать контекст и возможные побочные эффекты.
🔹 Недостаток автотестов.
Если в проекте нет хорошего набора автоматизированных тестов, старые баги могут возвращаться при каждом новом релизе. Хорошие автотесты помогают избежать этого.
🔹 Команда не ведёт учёт багов.
Если нет системы контроля дефектов или качественного описания фикса, баг может вернуться, потому что его просто не учли в тест-плане.
Что делать?
✅ Проводить регрессию после каждого фикса.
Не проверяй только сам баг – тестируй и связанные модули.
✅ Автоматизировать ключевые сценарии.
Например, если баг был связан с формой логина, добавь автотест, который будет её проверять при каждом релизе.
✅ Документировать баги и их фиксы.
Чем детальнее ты фиксируешь проблему, тем легче её предотвратить в будущем.
✅ Общаться с разработчиками.
Задавай вопросы: какие части системы могли быть затронуты? Это поможет определить области для дополнительного тестирования.
#qa #testing
Подпишись👉 @testlab_qa
#qa #testing
Подпишись👉 @testlab_qa
🧪 Как Fiddler спасает нагрузочное тестирование
Если ты до сих пор записываешь скрипты в Recorder — пора прокачать инструментарий.
Fiddler — не просто альтернатива, а настоящий универсальный солдат в нагрузочном тестировании.
🔥22 апреля в 20:00 мск. приглашаем на бесплатный вебинар «Без Fiddler как без рук: как инструмент спасает нагрузочное тестирование».
Что разберём:
🔹 как Fiddler помогает отлаживать скрипты быстрее и надёжнее
🔹 как перехватывать трафик и работать с системами без прокси
🔹 как подменять пакеты, использовать заглушки и гибко настраивать среду
📌 В конце — бонус: шпаргалка по настройке Fiddler для твоих проектов
🔧 Полезно всем, кто хочет добавить в свои тесты больше контроля и меньше боли.
👉 Регистрируйся: https://vk.cc/cKTxPx
Занятие приурочено к старту курса “Нагрузочное тестирование”, на котором вы научитесь составлять методику, разрабатывать скрипты, запускать тесты и настраивать мониторинг нагрузочного тестирования.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🎯 Что делать, если баг не воспроизводится у разработчика?
Привет, коллеги! Сегодня расскажу о ситуации, которая случается, пожалуй, с каждым тестировщиком: вы находите баг, всё четко описали, приложили скрины и логи, но… разработчик пишет: «У меня не воспроизводится». Что делать?
Вот мой чеклист, который помогает не устраивать битву QA против Dev:
1. Проверить окружение.
Одна из частых причин — разные сборки, версии браузера или мобильной ОС. Уточните, на чём тестили, и сравните с тем, что использует разработчик.
2. Уточнить данные.
Некоторые баги проявляются только при определённом пользователе, ролях или специфическом наборе данных. Проверьте: может быть, баг связан с конкретной записью или конфигурацией.
3. Пошаговая инструкция.
Иногда важен порядок действий. Убедитесь, что шаги в баг-репорте полностью воспроизводят ваш путь — вплоть до конкретной кнопки, на которую вы нажимали.
4. Добавить видео.
Скриншоты — хорошо, но короткое видео с багом часто снимает все вопросы. Особенно если баг нестабильный.
5. Проверка логов.
Даже если баг не виден, он может оставить след в логах. Приложите записи с уровнем error или warning.
6. Воспроизведение вместе.
Иногда проще устроить короткий Zoom/Teams и показать баг вживую. Часто это быстрее, чем переписка на 20 сообщений.
✨ И помните: мы не боремся с разработчиком, мы вместе боремся с багом. Сотрудничество — наше главное оружие.
Как вы обычно решаете такие ситуации? Делитесь в комментах!
#qa #testing
Подпишись👉 @testlab_qa
✅Зачем нужно контрактное тестирование в Kotlin QA и как гарантировать, что фронтенд и бэкенд понимают друг друга?
Приглашаем вас на открытый урок курса «Kotlin QA Engineer» от Otus, где рассмотрим инструменты для контрактного тестирования на Kotlin: Pact, Spring Cloud Contract и их отличие от интеграционных тестов.
Разберемся, как Kotlin QA-инженеры могут использовать Pact для тестирования API взаимодействия между сервисами.
Проведем интеграцию контрактных тестов на Kotlin в CI/CD
Обсудим best practices для Kotlin QA и разберем кейсы
Регистрация и подробности: 👇
https://vk.cc/cKBaKi
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
🔁 Как убедиться, что баг пофикшен?
Привет, коллеги! Сегодня поделюсь одной из простых, но часто игнорируемых практик: как правильно проверять, что баг действительно исправлен.
Многие ограничиваются просто: ну, теперь вроде работает, — и закрывают баг. Но это путь к регрессии.
Вот мой чеклист, который я использую после того, как разработчик говорит: готово, можно проверять:
1. Повторить шаги воспроизведения из описания бага.
Если баг воспроизводился при специфическом сценарии — проверь именно его.
2. Проверить рядом стоящий функционал.
Часто правка одной части кода влияет на соседние участки. Потрать 2–3 минуты на мини-ревизию.
3. Проверить, что баг действительно был.
Если ты не был автором бага — воспроизведи его на предыдущей версии (например, на staging-е или через старую сборку). Так ты точно знаешь, что баг не магическим образом исчез.
4. Погоняй автотесты.
Если есть автотесты — запусти регрессию хотя бы частично. Особенно, если баг был в критичном месте.
5. Коммуникация с разработчиком.
Не бойся задать уточняющие вопросы: что именно поменяли? или может ли это повлиять на X?. Это не придирки — это твоя работа.
Если ты внедришь эту практику — количество возвращающихся багов в спринте ощутимо уменьшится.
#qa #testing
Подпишись👉 @testlab_qa
Сегодня хочу напомнить об одной неочевидной ловушке при проверке багфикса.
Допустим, разработчик починил баг, вы повторили шаги — баг не воспроизводится. Всё, можно закрывать?
❌ Нет. Это ошибка новичка.
✅ Проверка багфикса — это не только “воспроизводится/не воспроизводится”.
Нужно всегда делать микро-регрессию вокруг бага. Почему?
Пример из практики:
*Баг — не сохраняется поле "email" при редактировании профиля.*
После фикса вы проверили — теперь email сохраняется. Но из-за изменения логики перестало сохраняться имя. 🤦♂️
🔁 Что делать правильно:
1. Проверить сам баг по шагам
2. Проверить смежные поля, действия, модули
3. Заглянуть в логи (если можете)
4. Задать себе вопрос: “Мог ли фикс задеть что-то ещё?”
Такой подход выделяет сильного тестировщика.
Будь не просто “проверяющим баги”, а гарантом стабильности 💪
А ты делаешь мини-регрессию после фикса или ограничиваешься проверкой одного сценария?
#qa #testing
Подпишись👉 @testlab_qa
Как избавиться от нестабильных тестов и ускорить развертывание?
Приглашаем на открытый урок «Оптимизация CI/CD для мобильных тестов на Kotlin»
Настроим CI/CD для мобильных тестов на Kotlin: работа с GitHub Actions/GitLab CI, эмуляторами и реальными устройствами.
Разберем причины флейковых тестов в Android-тестировании: тайминги, нестабильные UI-элементы, инфраструктурные ограничения.
Рассмотрим методы ускорения и инструменты для стабильности и отчетности: Espresso, UIAutomator, Firebase Test Lab, Allure.
✅ Практика: Настроим CI/CD пайплайн для запуска тестов на Android-устройствах и эмуляторах.
👉 Регистрация на урок: https://vk.cc/cKf50g
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Подборка Telegram каналов для программистов
/channel/bash_srv Bash Советы
/channel/win_sysadmin Системный Администратор Windows
/channel/lifeproger Жизнь программиста. Авторский канал.
/channel/devopslib Библиотека девопса | DevOps, SRE, Sysadmin
/channel/rabota1C_rus Вакансии для программистов 1С
Системное администрирование 📌
/channel/sysadmin_girl Девочка Сисадмин
/channel/srv_admin_linux Админские угодья
/channel/linux_srv Типичный Сисадмин
/channel/linux_odmin Linux: Системный администратор
/channel/devops_star DevOps Star (Звезда Девопса)
/channel/i_linux Системный администратор
/channel/linuxchmod Linux
/channel/sys_adminos Системный Администратор
/channel/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
/channel/sysadminof Книги для админов, полезные материалы
/channel/i_odmin Все для системного администратора
/channel/i_odmin_book Библиотека Системного Администратора
/channel/i_odmin_chat Чат системных администраторов
/channel/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
/channel/sysadminoff Новости Линукс Linux
1C разработка 📌
/channel/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
/channel/DevLab1C 1С:Предприятие 8
Программирование C++📌
/channel/cpp_lib Библиотека C/C++ разработчика
/channel/cpp_knigi Книги для программистов C/C++
/channel/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
/channel/pythonofff Python академия. Учи Python быстро и легко🐍
/channel/BookPython Библиотека Python разработчика
/channel/python_real Python подборки на русском и английском
/channel/python_360 Книги по Python Rus
Java разработка 📌
/channel/BookJava Библиотека Java разработчика
/channel/java_360 Книги по Java Rus
/channel/java_geek Учим Java на примерах
GitHub Сообщество 📌
/channel/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
/channel/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
/channel/developer_mobila Мобильная разработка
/channel/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
/channel/frontend_1 Подборки для frontend разработчиков
/channel/frontend_sovet Frontend советы, примеры и практика!
/channel/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
/channel/game_devv Все о разработке игр
Библиотеки 📌
/channel/book_for_dev Книги для программистов Rus
/channel/programmist_of Книги по программированию
/channel/proglb Библиотека программиста
/channel/bfbook Книги для программистов
/channel/books_reserv Книги для программистов
БигДата, машинное обучение 📌
/channel/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
/channel/bookflow Лекции, видеоуроки, доклады с IT конференций
/channel/coddy_academy Полезные советы по программированию
/channel/rust_lib Полезный контент по программированию на Rust
/channel/golang_lib Библиотека Go (Golang) разработчика
/channel/itmozg Программисты, дизайнеры, новости из мира IT
/channel/php_lib Библиотека PHP программиста 👨🏼💻👩💻
/channel/nodejs_lib Подборки по Node js и все что с ним связано
/channel/ruby_lib Библиотека Ruby программиста
QA, тестирование 📌
/channel/testlab_qa Библиотека тестировщика
Шутки программистов 📌
/channel/itumor Шутки программистов
Защита, взлом, безопасность 📌
/channel/thehaking Канал о кибербезопасности
/channel/xakep_2 Хакер Free
Книги, статьи для дизайнеров 📌
/channel/ux_web Статьи, книги для дизайнеров
Математика 📌
/channel/Pomatematike Канал по математике
/channel/phis_mat Обучающие видео, книги по Физике и Математике
Excel лайфхак📌
/channel/Excel_lifehack
/channel/tikon_1 Новости высоких технологий, науки и техники💡
/channel/mir_teh Мир технологий (Technology World)
Вакансии 📌
/channel/sysadmin_rabota Системный Администратор
/channel/progjob Вакансии в IT
🚀❓ Играете в игры, но хотите зарабатывать на их тестировании? Тогда это ваш шанс! На открытом вебинаре «Инструменты для тестирования игр» вы узнаете, как стать экспертом Game QA и превратить хобби в карьеру.
Что обсудим:
- Какие инструменты нужны для тестирования игр и зачем.
- Как работать с документацией, замерять производительность и автоматизировать рутину.
- Как собрать идеальный инструментарий для эффективной работы.
- Как использовать AI для ускорения тестирования.
⭐️ Спикер Никита Шаченко — QA Automation Engineer в Redhill Games.
Курс «Game QA Engineer» стартует совсем скоро, а все участники открытого урока получат скидку на обучение.
👉 Записывайтесь прямо сейчас: https://vk.cc/cJlmi0
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Разработка эффективных тест-кейсов для автоматизации: Руководство для опытных QA-инженеров
Автоматизированное тестирование требует грамотного проектирования тест-кейсов, обеспечивающего надежность, стабильность и минимальное техническое обслуживание. Разберем ключевые аспекты, которые помогут в создании эффективных тест-кейсов.
1. Основные принципы проектирования тест-кейсов для автоматизации
При написании тест-кейсов для автоматизации важно соблюдать несколько принципов:
1. Идентифицируемость – тест-кейс должен иметь четкое название, описывающее его цель.
2. Детерминированность – каждый тест-кейс должен давать один и тот же результат при повторном выполнении.
3. Модульность – тест-кейсы должны быть независимыми друг от друга, чтобы избежать цепной реакции сбоев.
4. Повторяемость – тест должен быть устойчивым к изменениям данных и среды.
5. Минимизация технического долга – избегайте чрезмерной детализации, которая затрудняет поддержку.
2. Структура эффективного автоматизированного тест-кейса
Хороший тест-кейс состоит из следующих компонентов:
• Название – краткое и информативное (например, Verify user login with valid credentials).
• Предварительные условия (Preconditions) – данные, состояния системы перед тестом.
• Шаги выполнения – четкая последовательность действий.
• Ожидаемый результат – конкретный и измеримый.
• Постусловия (Postconditions) – очистка данных, если требуется.
Пример:Название: Verify user login with valid credentials
Предусловия:
1. Пользователь зарегистрирован в системе.
Шаги:
1. Открыть страницу входа.
2. Ввести корректный логин и пароль.
3. Нажать "Войти".
Ожидаемый результат:
- Пользователь успешно авторизован.
- Открыта главная страница.
Постусловия:
- Выход из системы (если требуется).
3. Лучшие практики автоматизации тест-кейсов
Чтобы тесты были устойчивыми и эффективными, следуйте этим рекомендациям:
3.1. Используйте Page Object Model (POM)
Этот паттерн помогает избежать дублирования кода, улучшает читаемость и облегчает поддержку.
Пример:class LoginPage:
def __init__(self, driver):
self.driver = driver
self.username_field = driver.find_element(By.ID, "username")
self.password_field = driver.find_element(By.ID, "password")
self.login_button = driver.find_element(By.ID, "login")
def login(self, username, password):
self.username_field.send_keys(username)
self.password_field.send_keys(password)
self.login_button.click()
Использование:login_page = LoginPage(driver)
login_page.login("user@example.com", "securepassword")
3.2. Минимизируйте использование sleep()
Фиксированные задержки (time.sleep(5)) делают тесты медленными и нестабильными. Вместо этого используйте ожидания элементов:WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "dashboard")))
3.3. Создавайте независимые тесты
Тесты не должны зависеть друг от друга, иначе один сбой может вызвать цепочку ложных негативных результатов.
Плохая практика:
• Тест на авторизацию выполняется только после успешной регистрации.
Хорошая практика:
• Разделите регистрацию и авторизацию, используя API-запрос для предварительного создания пользователя.
3.4. Уменьшайте зависимость от тестовых данных
Храните тестовые данные в конфигурационных файлах или используйте параметризацию.
Пример параметризации в Pytest:@pytest.mark.parametrize("username, password", [
("user1@example.com", "pass123"),
("user2@example.com", "pass456"),
])
def test_login(username, password):
login_page.login(username, password)
assert dashboard_page.is_loaded()
#qa #testing
Подпишись👉 @testlab_qa
Бесплатный практический вебинар ― Тестировщик с нуля: как начать карьеру в IT без кода и знания математики.
⏰ Когда: 6 марта в 19:00 (мск).
За 2 часа вы узнаете как устроено ручное и автоматизированное тестирование, попробуете профессию на практике и протестируете свой первый сайт.
✔️ Познакомитесь с технологиями и навыками, которые требуются для старта в тестировании. Узнаете про зарплаты и перспективы в сфере.
✔️ Протестируете 2 страницы, разберете базовые техники тест-дизайна и тест-кейсы, автоматизируете тестирование при помощи Selenium IDE, составите первый баг-репорт.
🎁 Всем, кто зарегистрировался ― Гайд «Как заговорить на сленге IT-специалистов», а в конце трансляции ― Карту компетенций джуниор тестировщика!
Тестер объясняет разработчику как воспроизвести баг
#qa #testing
Подпишись👉 @testlab_qa