🔐 JWT (JSON Web Token), шпаргалка для QA-инженеров
Что это такое?
JWT это компактный и безопасный способ передачи информации между участниками. Чаще всего применяется для аутентификации и авторизации в API.
Структура токена
JWT состоит из трёх частей, разделённых точками:
Пример:
1. Header - метаинформация:
2. Payload - полезная нагрузка:
3. Signature - цифровая подпись:
Подписывается секретным ключом или приватным RSA-ключом.
Где используется
▫️Авторизация: Authorization: Bearer <токен>
▫️Обновление сессии через refresh token
▫️API-тесты в Postman, curl, автотестах
Преимущества
▫️Stateless - сервер не хранит сессии
▫️Удобен в API-авторизации
▫️Быстрая проверка токена
⚠️ Что важно проверить QA-инженеру
▫️Срок действия (exp)
▫️Просроченный токен → 401 Unauthorized
▫️Проверьте реакцию API при истечении срока
▫️Payload не зашифрован
▫️Любой может его прочитать
▫️Убедитесь, что в Payload нет паролей, токенов и личных данных
▫️Подпись токена
▫️Проверьте, что сервер её проверяет
▫️Подмена alg: none не должна быть допустима
▫️Доступ по ролям
▫️Пользователь не должен получить доступ к чужим данным
▫️Подмена Payload не должна менять права доступа
Поведение API:
▫️Без токена → 401
▫️С некорректным токеном → 401 или 403
🛠 Инструменты
▫️ jwt.io - удобный декодер и проверка подписи
▫️Postman - вставка токена в Authorization
▫️Charles/Burp - перехват токена, проверка подмены
Автор: Vladlen Tsiganenko
Что это такое?
JWT это компактный и безопасный способ передачи информации между участниками. Чаще всего применяется для аутентификации и авторизации в API.
Структура токена
JWT состоит из трёх частей, разделённых точками:
Header.Payload.SignatureПример:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoxMjMsImFkbWluIjp0cnVlfQ.sQ9e2RW7m8Jxv-cMcwBzNnSGNTHsIHoTPkWa-dkgOP4
1. Header - метаинформация:
{
"alg": "HS256",
"typ": "JWT"
}2. Payload - полезная нагрузка:
{
"user_id": 123,
"admin": true,
"exp": 1725650000
}3. Signature - цифровая подпись:
Подписывается секретным ключом или приватным RSA-ключом.
Где используется
▫️Авторизация: Authorization: Bearer <токен>
▫️Обновление сессии через refresh token
▫️API-тесты в Postman, curl, автотестах
Преимущества
▫️Stateless - сервер не хранит сессии
▫️Удобен в API-авторизации
▫️Быстрая проверка токена
⚠️ Что важно проверить QA-инженеру
▫️Срок действия (exp)
▫️Просроченный токен → 401 Unauthorized
▫️Проверьте реакцию API при истечении срока
▫️Payload не зашифрован
▫️Любой может его прочитать
▫️Убедитесь, что в Payload нет паролей, токенов и личных данных
▫️Подпись токена
▫️Проверьте, что сервер её проверяет
▫️Подмена alg: none не должна быть допустима
▫️Доступ по ролям
▫️Пользователь не должен получить доступ к чужим данным
▫️Подмена Payload не должна менять права доступа
Поведение API:
▫️Без токена → 401
▫️С некорректным токеном → 401 или 403
🛠 Инструменты
▫️ jwt.io - удобный декодер и проверка подписи
▫️Postman - вставка токена в Authorization
▫️Charles/Burp - перехват токена, проверка подмены
Автор: Vladlen Tsiganenko
👍57❤9🔥4
🚀 Не стройте ракету, пока не собрали бумажный самолёт
Один из главных рисков в запуске IT-продукта — застрять в бесконечной доработке и не выйти на рынок.
В комьюнити Короче, Капитан делают по-другому.
Челлендж: 12 запусков за 12 месяцев.
✅ Разработка и запуск — за 1 месяц
✅ Минимальные вложения (средний бюджет на продвижение — $150)
✅ Честный разбор: что получилось, а что — нет
Формула проста:
1 запуск = 1 функция = решение 1 проблемы
Три главных правила:
⚡️Проверенный спрос, а не догадки
⚡️ Быстрый запуск без перфекционизма
⚡️ Только США и ЕС — там платят за удобство
📎 Канал Короче, Капитан показывает запуск, продвижение и доход по каждому продукту в реальном времени.
🧩 Без иллюзий, без теорий — только работающие подходы и реальные цифры.
👉 Подписаться: @its_capitan
Один из главных рисков в запуске IT-продукта — застрять в бесконечной доработке и не выйти на рынок.
В комьюнити Короче, Капитан делают по-другому.
Челлендж: 12 запусков за 12 месяцев.
✅ Разработка и запуск — за 1 месяц
✅ Минимальные вложения (средний бюджет на продвижение — $150)
✅ Честный разбор: что получилось, а что — нет
Формула проста:
1 запуск = 1 функция = решение 1 проблемы
Три главных правила:
⚡️Проверенный спрос, а не догадки
⚡️ Быстрый запуск без перфекционизма
⚡️ Только США и ЕС — там платят за удобство
📎 Канал Короче, Капитан показывает запуск, продвижение и доход по каждому продукту в реальном времени.
🧩 Без иллюзий, без теорий — только работающие подходы и реальные цифры.
👉 Подписаться: @its_capitan
👍11🔥4😁4❤2
🛠 Новый тренажёр для QA: практика работы с Chrome DevTools
📍 Ссылка: https://aklimenkoschool.ru/simulators/devtools/
Если вы только начинаете тестировать web или хотите разобраться с возможностями DevTools — этот тренажёр для вас. Он поможет восполнить пробелы и научиться применять инструменты браузера в повседневной работе.
🔍 Сейчас доступны четыре вкладки:
▫️Elements — редактирование DOM и инспекция элементов
▫️Console — работа с ошибками и выполнение JS-команд
▫️Network — анализ запросов и ответов сервера
▫️Application — взаимодействие с хранилищем и куками
На каждой странице — интерактивные элементы и подсказки, чтобы вы могли практиковаться.
Автор: Алексей Клименко — QA Engineer в Ozon Tech
📍 Ссылка: https://aklimenkoschool.ru/simulators/devtools/
Если вы только начинаете тестировать web или хотите разобраться с возможностями DevTools — этот тренажёр для вас. Он поможет восполнить пробелы и научиться применять инструменты браузера в повседневной работе.
🔍 Сейчас доступны четыре вкладки:
▫️Elements — редактирование DOM и инспекция элементов
▫️Console — работа с ошибками и выполнение JS-команд
▫️Network — анализ запросов и ответов сервера
▫️Application — взаимодействие с хранилищем и куками
На каждой странице — интерактивные элементы и подсказки, чтобы вы могли практиковаться.
Автор: Алексей Клименко — QA Engineer в Ozon Tech
❤23🔥7👍5
🎮 Не пропустите! 05 августа в 20:00 пройдет бесплатный урок по теме “Искусство тестирования игровых уровней: от новичка до QA-специалиста в GameDev” от онлайн-курса “Game QA Engineer”.
Запись на урок: https://vk.cc/cO5OGg
🪄 Хотите узнать секреты тестирования игр? Представьте: вы играете в любимую игру и замечаете, что NPC ходит сквозь стены, а мебель "парит" над землёй. Именно такие баги ищут профессиональные тестировщики! На нашем бесплатном уроке вы освоите навыки поиска ошибок в игровых уровнях и сделаете первый шаг в игровую индустрию
Основные темы:
✅ Кто виноват, если уровень "сломан"? (Спойлер: не всегда тестировщик!)
✅ Этапы создания уровня и точки тестирования
✅ Баги, встречающиеся при тестировании уровней, и причины их возникновения
Вебинар будет полезен:
- Геймерам, которые хотят работать в индустрии.
- Новички в IT, ищущие быстрый старт.
- Всем, кто сомневается: "А есть ли шанс без опыта?".
- Желающим сменить профессию на тестирование игр
🔓 Не забудьте записаться на урок и узнать новое: https://vk.cc/cO5OGg
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru, erid: 2W5zFGBxgz4
Запись на урок: https://vk.cc/cO5OGg
🪄 Хотите узнать секреты тестирования игр? Представьте: вы играете в любимую игру и замечаете, что NPC ходит сквозь стены, а мебель "парит" над землёй. Именно такие баги ищут профессиональные тестировщики! На нашем бесплатном уроке вы освоите навыки поиска ошибок в игровых уровнях и сделаете первый шаг в игровую индустрию
Основные темы:
✅ Кто виноват, если уровень "сломан"? (Спойлер: не всегда тестировщик!)
✅ Этапы создания уровня и точки тестирования
✅ Баги, встречающиеся при тестировании уровней, и причины их возникновения
Вебинар будет полезен:
- Геймерам, которые хотят работать в индустрии.
- Новички в IT, ищущие быстрый старт.
- Всем, кто сомневается: "А есть ли шанс без опыта?".
- Желающим сменить профессию на тестирование игр
🔓 Не забудьте записаться на урок и узнать новое: https://vk.cc/cO5OGg
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru, erid: 2W5zFGBxgz4
👍8
Бесплатные курсы Coursera по искусственному интеллекту:
🧠 Основы AI
▫️AI For Everyone от DeepLearning. AI (Andrew Ng)
Введение в ИИ, значение и применение в бизнесе и обществе. Подходит для любого уровня.
▫️Introduction to Generative AI от Google Cloud
Быстрый часовой курс, который познакомит с концепцией генеративного ИИ
▫️Generative AI for Everyone от DeepLearning. AI
Углублённый обзор возможностей GenAI: LLM, prompt engineering
💻 Prompt‑engineering и работа с LLM
▫️Prompt Engineering for ChatGPT от Vanderbilt University
Понимание подходов к формулировке запросов для высокоэффективного взаимодействия с моделями
▫️Generative AI with Large Language Models от DeepLearning. AI + AWS
Техники дообучения моделей, оценка результатов, развертывание LLM-проектов
🌐 AI в бизнесе и обществе
▫️AI, Business & the Future of Work от Lund University
Анализ влияния ИИ на бизнес-процессы, карьеру и организационные изменения
▫️Ethics of Artificial Intelligence от Политехники Милана
Этические, социальные и философские аспекты внедрения технологий ИИ
🧩 Технологические навыки
▫️Introduction to Artificial Intelligence (AI) от IBM
Обзор зон применения ИИ, знакомство с технологиями машинного обучения
🧠 Основы AI
▫️AI For Everyone от DeepLearning. AI (Andrew Ng)
Введение в ИИ, значение и применение в бизнесе и обществе. Подходит для любого уровня.
▫️Introduction to Generative AI от Google Cloud
Быстрый часовой курс, который познакомит с концепцией генеративного ИИ
▫️Generative AI for Everyone от DeepLearning. AI
Углублённый обзор возможностей GenAI: LLM, prompt engineering
💻 Prompt‑engineering и работа с LLM
▫️Prompt Engineering for ChatGPT от Vanderbilt University
Понимание подходов к формулировке запросов для высокоэффективного взаимодействия с моделями
▫️Generative AI with Large Language Models от DeepLearning. AI + AWS
Техники дообучения моделей, оценка результатов, развертывание LLM-проектов
🌐 AI в бизнесе и обществе
▫️AI, Business & the Future of Work от Lund University
Анализ влияния ИИ на бизнес-процессы, карьеру и организационные изменения
▫️Ethics of Artificial Intelligence от Политехники Милана
Этические, социальные и философские аспекты внедрения технологий ИИ
🧩 Технологические навыки
▫️Introduction to Artificial Intelligence (AI) от IBM
Обзор зон применения ИИ, знакомство с технологиями машинного обучения
🔥15👍5❤2🕊1
📝 Как приручить текст в Python: регулярные выражения без страха и боли
Хотите уверенно работать с текстом при автоматизации тестов?
На этом вебинаре вы научитесь использовать регулярные выражения в Python — мощный инструмент, без которого не обходится ни один автоматизатор.
На вебинаре вы узнаете:
— Научимся искать фрагменты текста, заменять и разбивать строки по заданным шаблонам
— Разберём структуру и синтаксис регулярных выражений, научимся читать и составлять их с нуля
— Посмотрим, как реализованы RegEx в Python: особенности, функции, частые ошибки и лайфхаки
— Выполним небольшую практику, чтобы закрепить всё на деле
Вебинар проходит в рамках курса "Python QA Engineer"
👉 Регистрация и подробности о курсе "Python QA Engineer": https://vk.cc/cOaXSi
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, erid: 2W5zFHmxHnx
Хотите уверенно работать с текстом при автоматизации тестов?
На этом вебинаре вы научитесь использовать регулярные выражения в Python — мощный инструмент, без которого не обходится ни один автоматизатор.
На вебинаре вы узнаете:
— Научимся искать фрагменты текста, заменять и разбивать строки по заданным шаблонам
— Разберём структуру и синтаксис регулярных выражений, научимся читать и составлять их с нуля
— Посмотрим, как реализованы RegEx в Python: особенности, функции, частые ошибки и лайфхаки
— Выполним небольшую практику, чтобы закрепить всё на деле
Вебинар проходит в рамках курса "Python QA Engineer"
👉 Регистрация и подробности о курсе "Python QA Engineer": https://vk.cc/cOaXSi
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, erid: 2W5zFHmxHnx
😁10❤1
🚀 Первый нагрузочный тест в Apache Jmeter 📊
🔥 14 августа в 20:00 мск — открытый вебинар в OTUS.
Что мы рассмотрим:
– Почему Apache Jmeter — один из самых популярных инструментов для нагрузочного тестирования?
– Как создать и настроить HTTPS-скрипт для тестирования?
– Как провести итерацию нагрузочного тестирования и правильно анализировать результаты?
– Как генерировать информативные HTML-отчёты для лучшего понимания производительности системы?
🎓После вебинара вы:
✔️ Освоите базовые принципы работы с Apache Jmeter
✔️ Научитесь создавать и отлаживать HTTPS-скрипты
✔️ Поймёте, как проводить нагрузочные тесты и что анализировать в отчётах
✔️ Сможете генерировать отчёты, которые помогут в улучшении производительности ваших веб-ресурсов
Этот вебинар будет полезен всем, кто интересуется QA и тестированием, а также тем, кто хочет улучшить производительность своих веб-сайтов и приложений. Не пропустите! 🔥
👉 Регистрация https://vk.cc/cOaXSJ
Занятие приурочено к старту курса “Нагрузочное тестирование”, на котором вы научитесь составлять методику, разрабатывать скрипты, запускать тесты и настраивать мониторинг нагрузочного тестирования.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, erid: 2W5zFHuNECg
🔥 14 августа в 20:00 мск — открытый вебинар в OTUS.
Что мы рассмотрим:
– Почему Apache Jmeter — один из самых популярных инструментов для нагрузочного тестирования?
– Как создать и настроить HTTPS-скрипт для тестирования?
– Как провести итерацию нагрузочного тестирования и правильно анализировать результаты?
– Как генерировать информативные HTML-отчёты для лучшего понимания производительности системы?
🎓После вебинара вы:
✔️ Освоите базовые принципы работы с Apache Jmeter
✔️ Научитесь создавать и отлаживать HTTPS-скрипты
✔️ Поймёте, как проводить нагрузочные тесты и что анализировать в отчётах
✔️ Сможете генерировать отчёты, которые помогут в улучшении производительности ваших веб-ресурсов
Этот вебинар будет полезен всем, кто интересуется QA и тестированием, а также тем, кто хочет улучшить производительность своих веб-сайтов и приложений. Не пропустите! 🔥
👉 Регистрация https://vk.cc/cOaXSJ
Занятие приурочено к старту курса “Нагрузочное тестирование”, на котором вы научитесь составлять методику, разрабатывать скрипты, запускать тесты и настраивать мониторинг нагрузочного тестирования.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, erid: 2W5zFHuNECg
👍8😁1🙊1
📃 Как читать логи ошибок: инструкция для QA-инженера
🔍 Шаг 1: Где искать логи?
Перед анализом нужно понять, куда приложение пишет логи:
- Файлы на сервере (обычно в /var/log/ или logs/):
- Консоль разработчика (Chrome DevTools → Console или Network)
- Специальные сервисы:
- Sentry (для ошибок в проде)
- Kibana (если логи хранятся в Elasticsearch)
- Grafana (для метрик и системных логов)
📌 Шаг 2: Понимаем структуру лога
Типичная запись в логе содержит:
[2024-02-20 14:30:45] ERROR [app.controller] Status 500: NullPointerException in UserService.java:124
Разбираем по частям:
1. Дата и время (2024-02-20 14:30:45) - когда произошла ошибка
2. Уровень логирования (ERROR) - насколько всё плохо:
- DEBUG/TRACE - техническая информация для разработчиков,
- INFO - обычные события (например, «Пользователь залогинился»),
- WARN - потенциальная проблема, но приложение работает,
- ERROR - критическая ошибка (нужно чинить)
- FATAL/CRITICAL - самая высокая степень критичности (срочно чинить в первую очередь)
3. Источник (app.controller) - где случилась ошибка (класс/модуль)
4. Сообщение (NullPointerException in UserService.java:124) - суть ошибки и строка кода
🛠 Шаг 3: Как искать причину ошибки?
1. Ищем stack trace (список вызовов функций, которые привели к определенной точке в программе, например, к возникновению ошибки)
Пример:
java.lang.NullPointerException: Cannot invoke "User.getName()" because "user" is null
at com.example.UserService.getProfile(UserService.java:124)
at com.example.UserController.showProfile(UserController.java:45)
Что важно:
- Первая строка - тип ошибки (NullPointerException) и её описание
- Следующие строки - «путь» вызова методов (где началась ошибка и как она распространялась)
2. Анализируем контекст
Ошибка может не иметь очевидной причины. Проверьте:
- Что происходило перед ошибкой? (логи за 5-10 секунд до сбоя)
- Были ли похожие ошибки раньше? (поиск по логам)
3. Используем фильтры
Если логов много, сужаем поиск:
grep "NullPointerException" error.log (только ошибки этого типа)
grep -A 5 -B 5 "ERROR" app.log (+5 строк до/после ошибки)
💡 Шаг 4: Частые ошибки и как их читать
1. NullPointerException (Java)
Проблема: Обращение к объекту, который null
Что проверить:
- Передавались ли все обязательные параметры в метод?
- Вернула ли БД null вместо объекта?
2. 500 Internal Server Error
Проблема: Ошибка на сервере
Что проверить:
- Логи сервера (например, nginx или tomcat)
- Не упала ли БД или внешний API
3. ConnectionTimeout
Проблема: Сервер не ответил за отведённое время
Что проверить:
- Доступен ли сервер? (ping или telnet)
- Не перегружен ли он? (логи нагрузки CPU/RAM)
Автор: Aleksandra Primako, QA Engineer в 2V Modules
🔍 Шаг 1: Где искать логи?
Перед анализом нужно понять, куда приложение пишет логи:
- Файлы на сервере (обычно в /var/log/ или logs/):
- Консоль разработчика (Chrome DevTools → Console или Network)
- Специальные сервисы:
- Sentry (для ошибок в проде)
- Kibana (если логи хранятся в Elasticsearch)
- Grafana (для метрик и системных логов)
📌 Шаг 2: Понимаем структуру лога
Типичная запись в логе содержит:
[2024-02-20 14:30:45] ERROR [app.controller] Status 500: NullPointerException in UserService.java:124
Разбираем по частям:
1. Дата и время (2024-02-20 14:30:45) - когда произошла ошибка
2. Уровень логирования (ERROR) - насколько всё плохо:
- DEBUG/TRACE - техническая информация для разработчиков,
- INFO - обычные события (например, «Пользователь залогинился»),
- WARN - потенциальная проблема, но приложение работает,
- ERROR - критическая ошибка (нужно чинить)
- FATAL/CRITICAL - самая высокая степень критичности (срочно чинить в первую очередь)
3. Источник (app.controller) - где случилась ошибка (класс/модуль)
4. Сообщение (NullPointerException in UserService.java:124) - суть ошибки и строка кода
🛠 Шаг 3: Как искать причину ошибки?
1. Ищем stack trace (список вызовов функций, которые привели к определенной точке в программе, например, к возникновению ошибки)
Пример:
java.lang.NullPointerException: Cannot invoke "User.getName()" because "user" is null
at com.example.UserService.getProfile(UserService.java:124)
at com.example.UserController.showProfile(UserController.java:45)
Что важно:
- Первая строка - тип ошибки (NullPointerException) и её описание
- Следующие строки - «путь» вызова методов (где началась ошибка и как она распространялась)
2. Анализируем контекст
Ошибка может не иметь очевидной причины. Проверьте:
- Что происходило перед ошибкой? (логи за 5-10 секунд до сбоя)
- Были ли похожие ошибки раньше? (поиск по логам)
3. Используем фильтры
Если логов много, сужаем поиск:
grep "NullPointerException" error.log (только ошибки этого типа)
grep -A 5 -B 5 "ERROR" app.log (+5 строк до/после ошибки)
💡 Шаг 4: Частые ошибки и как их читать
1. NullPointerException (Java)
Проблема: Обращение к объекту, который null
Что проверить:
- Передавались ли все обязательные параметры в метод?
- Вернула ли БД null вместо объекта?
2. 500 Internal Server Error
Проблема: Ошибка на сервере
Что проверить:
- Логи сервера (например, nginx или tomcat)
- Не упала ли БД или внешний API
3. ConnectionTimeout
Проблема: Сервер не ответил за отведённое время
Что проверить:
- Доступен ли сервер? (ping или telnet)
- Не перегружен ли он? (логи нагрузки CPU/RAM)
Автор: Aleksandra Primako, QA Engineer в 2V Modules
👍34❤7🕊1🍾1
Хотите разобраться в тестировании API на ASP.NET Core?
➡️ Присоединяйтесь к открытому уроку «Тестирование API в ASP.NET Core: Интеграция и Нагрузка» 5 августа в 20:00 МСК. На вебинаре мы:
- Разберем ключевые концепции интеграционного и нагрузочного тестирования.
- Научимся писать интеграционные тесты с популярными библиотеками.
- Освоим инструменты для нагрузочного тестирования и анализа результатов.
📗 Этот урок — отличная подготовка к курсу «C# ASP.NET Core разработчик», который стартует совсем скоро. Все участники вебинара получат скидку на обучение!
Записаться на вебинар → https://vk.cc/cOaXSs
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru, erid: 2W5zFHpvGMe
➡️ Присоединяйтесь к открытому уроку «Тестирование API в ASP.NET Core: Интеграция и Нагрузка» 5 августа в 20:00 МСК. На вебинаре мы:
- Разберем ключевые концепции интеграционного и нагрузочного тестирования.
- Научимся писать интеграционные тесты с популярными библиотеками.
- Освоим инструменты для нагрузочного тестирования и анализа результатов.
📗 Этот урок — отличная подготовка к курсу «C# ASP.NET Core разработчик», который стартует совсем скоро. Все участники вебинара получат скидку на обучение!
Записаться на вебинар → https://vk.cc/cOaXSs
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru, erid: 2W5zFHpvGMe
👍8👎2🔥1😴1🙊1
Не пропустите! 12 августа в 20:00 пройдет бесплатный урок по теме “Искусство тестирования игровых уровней: от новичка до QA-специалиста в GameDev” от онлайн-курса “Game QA Engineer”. Запись на урок: https://vk.cc/cOgAeA
Хотите работать в игровой индустрии, но не знаете, с чего начать? Приходите на бесплатный урок и узнайте:
- Где искать вакансии — даже если у вас нет опыта.
- Как выделиться среди сотен кандидатов.
- Какие проекты стоит брать первыми — чтобы получить шанс в AAA-студии.
Основные темы:
1. Рынок геймдева в 2025: цифры и возможности
- Какие компании нанимают тестировщиков
- От чего зависит зарплата на старте карьеры
2. Где искать работу без опыта?
- Площадки для плейтестов (платные и бесплатные).
- Фриланс-проекты и стажировки — как получить первый опыт.
3. Что делать, если вакансий мало?
- Альтернативные пути: инди-студии, аутсорс, удалёнка.
4. Подготовка к собеседованию
Вебинар будет полезен:
- Геймерам, которые хотят работать в индустрии.
- Новички в IT, ищущие быстрый старт.
- Всем, кто сомневается: "А есть ли шанс без опыта?".
- Желающим сменить профессию на тестирование игр
Не забудьте записаться на урок и узнать новое: https://vk.cc/cOgAeA
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru, erid: 2W5zFJRbuUc
Хотите работать в игровой индустрии, но не знаете, с чего начать? Приходите на бесплатный урок и узнайте:
- Где искать вакансии — даже если у вас нет опыта.
- Как выделиться среди сотен кандидатов.
- Какие проекты стоит брать первыми — чтобы получить шанс в AAA-студии.
Основные темы:
1. Рынок геймдева в 2025: цифры и возможности
- Какие компании нанимают тестировщиков
- От чего зависит зарплата на старте карьеры
2. Где искать работу без опыта?
- Площадки для плейтестов (платные и бесплатные).
- Фриланс-проекты и стажировки — как получить первый опыт.
3. Что делать, если вакансий мало?
- Альтернативные пути: инди-студии, аутсорс, удалёнка.
4. Подготовка к собеседованию
Вебинар будет полезен:
- Геймерам, которые хотят работать в индустрии.
- Новички в IT, ищущие быстрый старт.
- Всем, кто сомневается: "А есть ли шанс без опыта?".
- Желающим сменить профессию на тестирование игр
Не забудьте записаться на урок и узнать новое: https://vk.cc/cOgAeA
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru, erid: 2W5zFJRbuUc
❤10👍3🌚2
Это база! Рассказываю о бесплатных функциях Google Календаря, которые упростят вашу жизнь
Google-календарь — это не просто место, где удобно записывать личные и рабочие дела. А ещё и мощный инструмент, который упростит вашу жизнь. Поделюсь моими любимыми функциями.
Читать
Google-календарь — это не просто место, где удобно записывать личные и рабочие дела. А ещё и мощный инструмент, который упростит вашу жизнь. Поделюсь моими любимыми функциями.
Читать
👍12❤2🔥1😁1
🔥 От тестировщика к эксперту по нагрузочному тестированию! 🚀
Нагрузочное тестирование — это не просто тренд, это актуальная потребность на рынке IT. Пройдите вступительное тестирование, проверьте свои знания и получите скидку на курс «Нагрузочное тестирование» в OTUS.
Вы научитесь:
✅ Работать с инструментами JMeter, Gatling, k6.io
✅ Настроить автоматизацию тестов через CI/CD
✅ Мониторить систему с помощью Grafana и Prometheus
✅ Планировать тесты для реальных рабочих нагрузок
📌 Пройдите тест и получите скидку на курс! 🎓 Подробности уточняйте у менеджера
🚀 Не упустите шанс стать экспертом в нагрузочном тестировании и повысить свою квалификацию!
👉 Пройти тестирование https://vk.cc/cOaXTQ
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, erid: 2W5zFHxLCmN
Нагрузочное тестирование — это не просто тренд, это актуальная потребность на рынке IT. Пройдите вступительное тестирование, проверьте свои знания и получите скидку на курс «Нагрузочное тестирование» в OTUS.
Вы научитесь:
✅ Работать с инструментами JMeter, Gatling, k6.io
✅ Настроить автоматизацию тестов через CI/CD
✅ Мониторить систему с помощью Grafana и Prometheus
✅ Планировать тесты для реальных рабочих нагрузок
📌 Пройдите тест и получите скидку на курс! 🎓 Подробности уточняйте у менеджера
🚀 Не упустите шанс стать экспертом в нагрузочном тестировании и повысить свою квалификацию!
👉 Пройти тестирование https://vk.cc/cOaXTQ
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, erid: 2W5zFHxLCmN
❤11
💻 RabbitMQ против Kafka — что выбрать для вашей структуры: сравнение и лучшие практики 🛠
🔥 11 августа в 20:00 мск приглашаем на открытый вебинар в OTUS.
На вебинаре рассмотрим:
- Обзор RabbitMQ: принципы работы, отправка и получение сообщений
- Обзор Kafka: устройство, принципы работы, отправка и получение сообщений
- Сравнение RabbitMQ и Kafka: когда и почему выбрать одно из решений
🎓 После вебинара вы:
- Узнаете различия между RabbitMQ и Kafka и научитесь выбирать подходящий инструмент для своей системы
- Освоите принципы работы с обоими брокерами сообщений
- Получите советы по настройке и внедрению для повышения производительности и надежности
Присоединяйтесь, чтобы научиться эффективно работать с RabbitMQ и Kafka для потоковой обработки данных и обмена сообщениями! 🚀
🎁 Все участники получат шаблоны настроек конфигурации для Spring Boot: RabbitMQ, Kafka
👉 Регистрация https://vk.cc/cOaXUk
Бесплатное занятие приурочено к старту курса Microservice Architecture, обучение на котором позволит освоить микросервисы: Docker, Kafka, API и стать мастером производительных систем
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, erid: 2W5zFJ4G9tk
🔥 11 августа в 20:00 мск приглашаем на открытый вебинар в OTUS.
На вебинаре рассмотрим:
- Обзор RabbitMQ: принципы работы, отправка и получение сообщений
- Обзор Kafka: устройство, принципы работы, отправка и получение сообщений
- Сравнение RabbitMQ и Kafka: когда и почему выбрать одно из решений
🎓 После вебинара вы:
- Узнаете различия между RabbitMQ и Kafka и научитесь выбирать подходящий инструмент для своей системы
- Освоите принципы работы с обоими брокерами сообщений
- Получите советы по настройке и внедрению для повышения производительности и надежности
Присоединяйтесь, чтобы научиться эффективно работать с RabbitMQ и Kafka для потоковой обработки данных и обмена сообщениями! 🚀
🎁 Все участники получат шаблоны настроек конфигурации для Spring Boot: RabbitMQ, Kafka
👉 Регистрация https://vk.cc/cOaXUk
Бесплатное занятие приурочено к старту курса Microservice Architecture, обучение на котором позволит освоить микросервисы: Docker, Kafka, API и стать мастером производительных систем
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, erid: 2W5zFJ4G9tk
👍5👎4😁3❤2
Почему автоматизаторы не заменят QA?
Когда я только начинал в автоматизации, казалось, что скоро автотесты заменят всех QA. Зачем вручную проверять, если можно написать код который быстрее и надёжнее (что не скажешь про фронтовые тесты).
Эта тема много где бурно обсуждалась и начинающим QA советовали сразу погружаться в автоматизацию. Но побывав на 4х разных проектах, везде с разными QA, решил написать свое мнение из увиденного.
Автотесты хороши, когда чётко знаешь, что и как должно работать. Но они не чувствуют, что "что-то не так" в поведении. Автотест - это как робот-пылесос - отлично справляется с рутиной, но если где-то пролилось кофе - зовите человека.
Мануальщики - не кнопкодавы 😄
Хороший мануальщик - это не тот, кто просто "щёлкает по кнопочкам". Это тот, кто:
- умеет быстро находить баги там, где их не ждут,
- знает продукт вдоль и поперёк,
- ловит непредсказуемые сценарии и нестандартное поведение,
- сопровождает фичу до релиза.
И что самое важное - делает это в моменте, гибко, по ситуации.
Где автоматизация нужна?
Автотесты идеальны там, где:
- надо проверять одно и то же 100 раз (регресс, smoke),
- важна скорость и повторяемость (CI/CD),
- высокая цена ошибки, и нужен гарантированный результат.
Например, перед продом - тесты пробежались, старый функционал не сломан, всё зелёное - спокойно катимся.
Где без QA - никуда? Почти везде! Например:
- Исследовательское тестирование. Когда надо "поиграться" с новой фичей и посмотреть, как она вообще себя ведёт.
- UX-тестирование. Автотест не скажет: "а вот тут неудобно, и кнопка непонятная".
- Быстрая проверка бага с прода.
- Тестирование сложных визуальных сценариев. Привет, drag’n’drop, канвасы, таблицы и карты.
Это разные роли, а не борьба
- QA - это глаза и интуиция проекта. Это первый человек, кто скажет: "Ребят, кажется, пользователю тут будет неудобно".
- AQA - это защитник от регрессий и "уже проверенных" багов. Он покрывает логику кодом и не даёт продукту откатиться назад.
Это не замена, а синергия.
Это как повар и посудомоечная машина - ты можешь ускорить процесс, но без человека вкусный ужин не получится.
Как жить вместе?
У нас сейчас на проекте работает связка:
- QA исследуют, проверяют сложные кейсы, общаются с бизнесом.
- AQA покрывают всё, что можно автоматизировать: smoke, регресс, критичные пути.
Мы делимся знаниями, вместе пишем тест-кейсы, вместе рефачим автотесты, если вдруг нужно. И это работает.
И пока продукт делают люди для людей - ручное тестирование будет жить. А автоматизация - это не замена ручного тестирования. Это просто другой инструмент. Она рядом, чтобы не отвлекать QA на рутину и дать им возможность увидеть больше. 😊
Автор: Сергей Александров, QA Automation Engineer в AK Bars Digital
Когда я только начинал в автоматизации, казалось, что скоро автотесты заменят всех QA. Зачем вручную проверять, если можно написать код который быстрее и надёжнее (что не скажешь про фронтовые тесты).
Эта тема много где бурно обсуждалась и начинающим QA советовали сразу погружаться в автоматизацию. Но побывав на 4х разных проектах, везде с разными QA, решил написать свое мнение из увиденного.
Автотесты хороши, когда чётко знаешь, что и как должно работать. Но они не чувствуют, что "что-то не так" в поведении. Автотест - это как робот-пылесос - отлично справляется с рутиной, но если где-то пролилось кофе - зовите человека.
Мануальщики - не кнопкодавы 😄
Хороший мануальщик - это не тот, кто просто "щёлкает по кнопочкам". Это тот, кто:
- умеет быстро находить баги там, где их не ждут,
- знает продукт вдоль и поперёк,
- ловит непредсказуемые сценарии и нестандартное поведение,
- сопровождает фичу до релиза.
И что самое важное - делает это в моменте, гибко, по ситуации.
Где автоматизация нужна?
Автотесты идеальны там, где:
- надо проверять одно и то же 100 раз (регресс, smoke),
- важна скорость и повторяемость (CI/CD),
- высокая цена ошибки, и нужен гарантированный результат.
Например, перед продом - тесты пробежались, старый функционал не сломан, всё зелёное - спокойно катимся.
Где без QA - никуда? Почти везде! Например:
- Исследовательское тестирование. Когда надо "поиграться" с новой фичей и посмотреть, как она вообще себя ведёт.
- UX-тестирование. Автотест не скажет: "а вот тут неудобно, и кнопка непонятная".
- Быстрая проверка бага с прода.
- Тестирование сложных визуальных сценариев. Привет, drag’n’drop, канвасы, таблицы и карты.
Это разные роли, а не борьба
- QA - это глаза и интуиция проекта. Это первый человек, кто скажет: "Ребят, кажется, пользователю тут будет неудобно".
- AQA - это защитник от регрессий и "уже проверенных" багов. Он покрывает логику кодом и не даёт продукту откатиться назад.
Это не замена, а синергия.
Это как повар и посудомоечная машина - ты можешь ускорить процесс, но без человека вкусный ужин не получится.
Как жить вместе?
У нас сейчас на проекте работает связка:
- QA исследуют, проверяют сложные кейсы, общаются с бизнесом.
- AQA покрывают всё, что можно автоматизировать: smoke, регресс, критичные пути.
Мы делимся знаниями, вместе пишем тест-кейсы, вместе рефачим автотесты, если вдруг нужно. И это работает.
И пока продукт делают люди для людей - ручное тестирование будет жить. А автоматизация - это не замена ручного тестирования. Это просто другой инструмент. Она рядом, чтобы не отвлекать QA на рутину и дать им возможность увидеть больше. 😊
Автор: Сергей Александров, QA Automation Engineer в AK Bars Digital
❤68👍18👏11😁1
💻 MITM: почему бесплатный Wi-Fi знает о вас больше, чем мама
На открытом уроке разберёмся, как работает классическая атака "Man-in-the-Middle" (MITM) и почему подключение к «бесплатному Wi-Fi» может стоить вам приватности.
На вебинаре вы узнаете:
- Поймёте, как злоумышленник перехватывает трафик между вами и интернетом.
- Научитесь отличать уязвимые соединения от защищённых.
- Узнаете, почему бесплатные ресурсы — это иногда хуже, чем его отсутствие.
- Получите базовые навыки безопасного поведения в открытых сетях.
Вебинар проходит в рамках курса "Автоматизированное тестирование веб-сервисов на Go"
👉 Регистрация и подробности о курсе "Автоматизированное тестирование веб-сервисов на Go" https://vk.cc/cOgfbR
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, erid: 2W5zFHUgfkc
На открытом уроке разберёмся, как работает классическая атака "Man-in-the-Middle" (MITM) и почему подключение к «бесплатному Wi-Fi» может стоить вам приватности.
На вебинаре вы узнаете:
- Поймёте, как злоумышленник перехватывает трафик между вами и интернетом.
- Научитесь отличать уязвимые соединения от защищённых.
- Узнаете, почему бесплатные ресурсы — это иногда хуже, чем его отсутствие.
- Получите базовые навыки безопасного поведения в открытых сетях.
Вебинар проходит в рамках курса "Автоматизированное тестирование веб-сервисов на Go"
👉 Регистрация и подробности о курсе "Автоматизированное тестирование веб-сервисов на Go" https://vk.cc/cOgfbR
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, erid: 2W5zFHUgfkc
❤12👎2🙊2🌚1
🔖 Почитать:
- Хабр
▫️Как выбрать профиль нагрузки
▫️Мир, дружба, тестирование: QA и разработка
▫️Как вырасти из Manual QA в Automation: пошаговый план
▫️Как я стал тестировщиком 1С
▫️Кастомизируем xUnit: feature-toggles или API тесты не для всех конечных точек
▫️Блиц-практикум. Установка RabbitMQ и Kafka через Docker
▫️Кейс. Как мы создали приложение для тестирования клетки Фарадея и превратили его в инструмент продаж
▫️Инцидент. Разбор крупнейшей кибератаки на корейский телеком
- Также
▫️Все о куках приложения для тестировщиков
▫️Идеальное соотношение – сколько тестировщиков нужно команде проекта?
▫️Падаем с изяществом: руководство по культуре ошибок для тестировщика
▫️6 лучших ИИ-инструментов для тестирования UI/UX
▫️Как писать тесты с помощью ИИ
▫️Полная философия тестирования ПО в 50 словах
▫️Почему я делаю ставку на LLM для тестирования UI
▫️iGaming: специфика тестирования букмекерских приложений
▫️Регресс в e-commerce с 7 дней до 4 часов. Подняли конверсию fashion-маркетплейса на 8%
▫️Логическая модель БД на практике: пример, ошибки, выводы
▫️Оркестрация и хореография микросервисов
- Англоязычное
▫️How i got “that” job at Microsoft
▫️Managing the Consequences of the ‘Ship Now, Fix Later’ Approach
▫️Some of the things I did after being off for a few weeks
▫️Empathy — Missing in Engineers. Then, Why Think Like a User?
▫️The Smart Founder’s Testing Strategy
▫️Does This Look Right To You, AI?
▫️I Replaced Some Test Automation Assertions With GPT-4o API
▫️Test code should rarely be resilient
▫️Pull Request-Driven Development
▫️Real vs Clear
▫️AgentiTest — Google’s Opensource AI-Native Test Automation Tool
▫️How AI Is Stress-Testing RNG Systems in Ontario’s Fast-Payout Mobile Casinos
👀 Посмотреть:
Интересного дня!
Please open Telegram to view this post
VIEW IN TELEGRAM
😁21❤13🔥5👍1