Тестировщик от бога
29.3K subscribers
1.96K photos
64 videos
2 files
1.84K links
Регистрация в перечне РКН:
https://knd.gov.ru/license?id=6756feb5c577eb7c5260f6b8&registryType=bloggersPermission

Божественный канал про тестирование

Официальный телеграм-канал портала testengineer.ru

По всем вопросам: @anothertechrock, @godinmedia
Download Telegram
Микросервисы — это не просто набор отдельных сервисов. Важно понимать, где живёт бизнес-логика и как не превратить архитектуру в сложную систему зависимостей.

🔥22 октября в 19:00 МСК на открытом уроке разберём основы проектирования бизнес-логики в микросервисной архитектуре: как декомпозировать логику по сервисам, какие паттерны использовать и как избежать хаоса при росте приложения.

Поговорим о Shared Kernel, API Composition и Saga, разберём, где должна находиться логика в сервисе, API-шлюзе или общем слое, а также рассмотрим ошибки при проектировании и кейсы декомпозиции сложной бизнес-логики.

Урок проходит в преддверии старта курса «Микросервисная архитектура» и будет полезен backend- и fullstack-разработчикам, архитекторам ПО и системным аналитикам.

⏰Зарегистрируйтесь и разберите основы проектирования бизнес-логики в микросервисной архитектуре: https://vk.cc/d2T30S
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
❤4🔥4👍2🌚1
А что, если бы был такой фреймворк для Go-тестирования, который расширялся бы под любую задачу? Подумали в Ozon Tech, создали такой фреймворк и выложили на GitHub.

Знакомьтесь, Testo: всего один слой над testing.T, а сколько возможностей.

1. Адаптируется под разные сценарии за счёт плагинов.
2. Запускает параметризованные тесты.
3. Поддерживает параллелизацию на всех этапах.
4. Организует тесты в Suite и отдельные тесты.
5. Формирует Allure-отчёты.

Все фичи обозначены на странице фреймворка. Забирайте в работу: https://ozon.tech/testo
🧩 Шпаргалка для QA инженеров: Как тестировать интеграцию одной системы в другую
Источник: Владлен Цыганенко

🔎 1. Анализ требований
— Определите, какие системы интегрируются (API, SDK, база данных, внешние сервисы).
— Уточните цели интеграции: передача данных, авторизация, аналитика, платежи и т.д.
— Разберитесь, какие данные/события должны передаваться, в каком формате и с какой частотой.

💠 2. Проверка базовой интеграции
— Данные передаются из системы А в систему Б без ошибок.
— Формат и структура данных соответствуют спецификации (JSON/XML/CSV и т.п.).
— Обязательные поля присутствуют и корректны.

🔐 3. Валидация безопасности
— Проверить авторизацию/аутентификацию (OAuth, API key, токены).
— Проверить доступ только у разрешённых пользователей/сервисов.
— Негативные проверки: неверный токен, истёкший токен, отсутствие прав.

🌐 4. Сценарии с сетью и окружением
— Что будет при медленном интернете, потере соединения?
— Поведение при повторной отправке одного и того же запроса (идемпотентность).
— Проверка работы в разных окружениях: dev, staging, production.

🔄 5. Обработка ошибок
— Если система А отправила некорректные данные, то система Б возвращает понятный ответ?
— Ошибки логируются и доступны для анализа?
— Пользователь видит корректное сообщение об ошибке (а не «500 internal error»).

📊 6. Нагрузочное тестирование
— Как система реагирует на большой поток запросов?
— Есть ли задержки при обмене данными?
— Нет ли потери или дублирования данных?

🧪 7. Негативные кейсы
— Отправка пустых значений.
— Использование устаревших версий SDK/API.
— Несовпадение версий протоколов (например, HTTP/1.1 vs HTTP/2).

📝 8. Документация и регрессия
— Вся интеграция должна быть задокументирована.
— Проверяйте совместимость при обновлениях (новая версия SDK, новая версия API).
— Ведите чек-листы/тест-кейсы для будущих регрессий.

Инструменты
▫️Postman / Insomnia - API
▫️Charles / Fiddler - трафик
▫️Kibana / Grafana - логи и метрики
▫️Burp Suite / OWASP ZAP - безопасность
▫️Selenium / Playwright / Cypress - e2e
▫️JMeter / k6 / Locust - нагрузка
▫️Android Studio / Xcode - SDK, мобильные
▫️Firebase Test Lab / BrowserStack - устройства

ИТОГ:
QA проверяет обмен данными, учитывает краевые сценарии, оценивает безопасность, стабильность и совместимость систем.
❤16
Когда получил задачу без чётких требований. С понедельником нас всех.
1😁31👍6🌚3
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔6❤3👍3
📌 OAuth 2.0 и OpenID Connect простыми словами для QA

OAuth и OpenID Connect часто звучат сложно, но на практике это просто способы безопасно пускать пользователя в систему — без передачи пароля каждому сервису.

Разберёмся без криптографии и лишней теории 👇

▫️ Что такое OAuth 2.0
OAuth — это протокол авторизации.
Он отвечает на вопрос:
👉 «Можно ли этому приложению получить доступ к ресурсу пользователя?»

Пример:
Вы логинитесь в сервис через Google → сервис получает access token, но не знает ваш пароль от Google.

Важно для QA:
— OAuth не про логин, а про доступ
— Токен даёт ограниченные права (scope)
— Токен имеет срок жизни

▫️ Что такое OpenID Connect (OIDC)
OIDC — это надстройка над OAuth, которая добавляет аутентификацию.

OIDC отвечает на вопрос:
👉 «Кто этот пользователь?»

OIDC возвращает ID Token, в котором есть:
— user_id
— email
— имя
— issuer (кто подтвердил пользователя)

Проще:
OAuth → что можно делать
OIDC → кто пользователь

▫️ Типичный OAuth / OIDC flow (упрощённо)
— Пользователь нажал «Login with Google»
— Его редиректит на страницу провайдера
— Пользователь подтверждает доступ
— Приложение получает токены
— Пользователь залогинен

▫️ Основные типы токенов
— Access Token — используется в API-запросах
— Refresh Token — обновляет access token
— ID Token (OIDC) — содержит данные о пользователе

▫️ Что QA важно проверять
— Истечение срока действия access token
— Обновление refresh token
— Поведение при logout
— Доступ по ролям и scope
— Ошибки 401 / 403
— Можно ли использовать старый токен
— Что происходит при отмене доступа у провайдера

▫️ Где смотреть и тестировать
— Browser DevTools → Network / Application
— Postman — подмена токенов
— jwt.io — декодирование JWT
— Webhook.site / httpbin — проверка headers

💡 Совет:
Если не понимаете flow — просто пройдите логин шаг за шагом и смотрите Network. OAuth перестаёт быть «магией», когда видишь реальные запросы.
❤11👍7
🔥 Приглашаем на бесплатный открытый вебинар курса «Нагрузочное тестирование»:
«Стенды для нагрузочного тестирования»

От выбора стенда во многом зависит качество и достоверность нагрузочного тестирования. На вебинаре разберём, какие стенды существуют, в чём их особенности и как правильно выбирать окружение под задачи НТ.

Что будет на вебинаре:
- Типы стендов для нагрузочного тестирования
- Основные особенности стендов для НТ
- Как выбирать стенды для нагрузочного тестирования
- Основные цели стендов и на что они влияют

В результате вебинара вы:

- Поймёте, какие стенды подходят для разных задач нагрузочного тестирования
- Научитесь учитывать особенности окружения при планировании НТ
- Сможете более осознанно выбирать стенды под свои проекты

Кому будет полезно:
Специалистам по ручному и автоматизированному тестированию, специалистам по нагрузочному тестированию, разработчикам, прикладным и системным администраторам.

👉 Зарегистрируйтесь: https://vk.cc/d34ypU

Открытый урок проходит в рамках курса «Нагрузочное тестирование», на котором вы научитесь составлять методику, писать скрипты, запускать тесты и настраивать мониторинг нагрузочного тестирования.

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
❤4👍4🤔3
Тридцатилетний ты задремал на работе. Коллеги зумеры:
😁37😢2
⚠️ Если компания предлагает вам «разойтись по-хорошему» — не торопитесь подписывать документы.

Созвон на 15 минут без повестки, «ну что, определился?» от HR, допсоглашение до пятницы — так обычно начинаются сокращения в IT.

Многие специалисты под давлением работодателя пишут заявление по собственному желанию, не обсудив компенсацию и условия ухода, и даже не понимают, что их права нарушают.

Команда «5оффер» уже несколько лет помогает IT-специалистам любых грейдов и направлений:
▪️ добиваться выгодных условий при увольнении;
▪️ сохранять работу;
▪️ решать другие трудовые вопросы.

Наши юристы специализируются на трудовом праве и знают специфику IT.

✍️ Сохрани контакт «5оффер», чтобы он был под рукой в сложной ситуации.

Телеграм-канал

🎁 По промокоду 3KONS первичная консультация — 5000 3 000 ₽.

Записаться на консультацию — @Fiveoffer_bot

Реклама. ИП Кузнецова Ирина Сергеевна. ИНН:745111070021. erid: 2W5zFJ5tGzd
❤6👍5🍾4🤔2😁1
📌 ТОП инструментов и подходов для тестирования авторизации и токенов

Авторизация — одно из самых уязвимых мест в системе.
Ошибки с токенами, сессиями и ролями могут приводить не только к багам, но и к серьёзным проблемам с безопасностью.

Собрали инструменты и практики, которые помогают QA эффективно тестировать auth-флоу:

▫️ Postman
— Проверка login/logout
— Работа с JWT, access / refresh tokens
— Подмена токенов, проверка сроков жизни
— Удобно для ручных и автотестов
🔗 https://www.postman.com

▫️ JWT.io
— Декодирование и анализ JWT
— Проверка payload, exp, iss, aud
— Удобно для быстрой ручной валидации токенов
🔗 https://jwt.io

▫️ Chrome DevTools (Application / Network)
— Просмотр cookies, localStorage, sessionStorage
— Анализ Authorization headers
— Проверка обновления токенов и ошибок 401/403
🔗 https://developer.chrome.com/docs/devtools

▫️ HTTPBin / Webhook.site
— Проверка передачи headers
— Эксперименты с токенами и cookies
— Отладка auth-запросов
🔗 https://httpbin.org
🔗 https://webhook.site

▫️ Burp Suite (Community Edition)
— Перехват и модификация auth-запросов
— Проверка уязвимостей сессий
— Повторные запросы с разными токенами
🔗 https://portswigger.net/burp/communitydownload

▫️ OWASP Juice Shop
— Практика тестирования авторизации и сессий
— Реальные уязвимости: broken auth, IDOR, token reuse
— Отлично подходит для обучения
🔗 https://owasp.org/www-project-juice-shop

▫️ Checklist для QA (что проверять)
— Истечение срока действия токена
— Обновление refresh-token
— Доступ по ролям
— Поведение при logout
— Повторное использование старого токена
— Работа в нескольких вкладках

Эти инструменты и проверки помогают находить критичные баги ещё до продакшена и повышать уровень безопасности продукта.
👍6🔥4❤3
🤖Podlodka Backend Crew: AI в бэкенд-задачах

Демо с AI чаще всего выглядят одинаково: агент за десять минут пишет сервис с нуля.

Вот только в работе бэкендера всё сложнее: легаси, рискованные миграции, неработающие тесты и ревью, которое становится бутылочным горлышком.

🗓 С 26 по 30 октября в сезоне Podlodka Backend Crew «AI в бэкенд-задачах» участники:

• Научатся передавать агенту инженерные стандарты и правила, чтобы он писал так, как нужно, а не как получится

• Соберут ревью, где несколько моделей независимо проверяют изменения, а финальное решение остаётся за человеком

• Посмотрят, куда переезжает сложность миграции легаси, когда код пишет агент

• Выяснят, где ломается мечта отдать миграцию агенту целиком

• Разберут, какие антипаттерны тестов агенты
уже успели перенять от разработчиков.

Формат — пять дней живых Zoom-сессий утром и вечером, закрытое сообщество в Telegram и общение со спикерами.

Будет много интерактива и практики. Базовый ликбез оставят за бортом — этот сезон для тех, кто уже пробует AI в реальных проектах. Присоединяйтесь с 26 октября!

🔗 Билеты и программа: https://podlodka.io/becrew

Промокод на скидку подписчикам
techrock
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍3👎2🍾1
✉️ ТОП бесплатных инструментов для тестирования email-рассылок

Тестирование email-рассылок может включать проверку SMTP, верстки, заголовков, доставки.
Подготовили подборку бесплатных инструментов, которые будут полезны QA.

▫️Mailtrap (Free Sandbox)
Перехватывает тестовые письма в изолированную среду, позволяет проверять HTML, заголовки, вложения и работать через API.
🔗 https://mailtrap.io/email-sandbox/

▫️MailHog
Open-source локальный SMTP-сервер, который собирает все исходящие письма и позволяет просматривать их через веб-интерфейс.
🔗 https://github.com/mailhog/MailHog

▫️Swaks
CLI-инструмент для тестирования SMTP: авторизация, TLS, кастомные заголовки, тестовые письма.
🔗 https://github.com/jetmore/swaks

▫️Mail-in-a-Box
Open-source локальный почтовый сервер для локального. Позволяет тестировать реальные SMTP/IMAP-флоу.
🔗 https://mailinabox.email

▫️Mailcare
Бесплатный sandbox-SMTP: перехватывает тестовые письма, показывает HTML/текст, анализирует заголовки и spam-score. Есть свой API.
🔗 https://mailcare.io

Почему именно эти инструменты?
— безопасное тестирование рассылок без риска отправить письма реальным пользователям
— автоматизация через API — можно покрывать email-флоу тестами
— проверка SMTP-конфигураций, аутентификации, работы с вложениями
— собственная локальная инфраструктура для тестов — нет зависимости от внешних сервисов
— интеграция с CI/CD, чтобы «email-тесты» стали частью автоматизации
👍4❤3
Какое неожиданное наблюдение. Всем хороших выходных!
😁41❤14
📌 Готовые базы данных для практики SQL

Если хотите улучшить навыки работы с SQL и ищете открытые базы данных для практики на реальных кейсах — ловите отличную подборку.

Все эти базы можно использовать в MySQL, PostgreSQL, SQLite, SQL Server или Oracle.

💎 Стандартные тестовые базы
Подходят для обучения и тестирования SQL-запросов:

▫️Sakila Database — база данных видеопроката (MySQL)
🔗 https://dev.mysql.com/doc/sakila/en/

▫️Northwind Database — классическая база для бизнес-аналитики (SQLite, SQL Server)
🔗 https://learn.microsoft.com/en-us/dotnet/framework/data/adonet/sql/linq/downloading-sample-databases

▫️AdventureWorks — тестовая база для SQL Server
🔗 https://github.com/Microsoft/sql-server-samples/tree/master/samples/databases/adventure-works

▫️Chinook Database — база музыкального магазина (PostgreSQL, MySQL, SQLite)
🔗 https://learn.microsoft.com/en-us/sql/samples/adventureworks-install-configure?view=sql-server-ver17&tabs=ssms

💎 Крупные открытые базы для аналитики
Реальные данные для SQL-задач, машинного обучения и BI-инструментов:

▫️IMDb Dataset — данные о фильмах, актёрах и рейтингах
🔗 https://www.imdb.com/interfaces

▫️Kaggle Open Data — тысячи открытых наборов данных
🔗 https://www.kaggle.com/datasets

▫️Google BigQuery Public Datasets — открытые публичные базы в облаке
🔗 https://cloud.google.com/bigquery/public-data

▫️European Soccer Database — футбольная статистика и результаты матчей
🔗 https://www.kaggle.com/datasets/hugomathien/soccer

💎 Тематические базы для практики на реальных кейсах

▫️COVID-19 Open Data — данные о пандемии
🔗 https://health.google.com/covid-19/open-data/raw-data

▫️Airbnb Open Data — информация о жилье, ценах и заселениях по всему миру
🔗 http://insideairbnb.com

▫️Spotify Dataset — данные о треках, жанрах и рейтингах
🔗 https://www.kaggle.com/datasets/maharshipandya/-spotify-tracks-dataset

▫️Wikipedia Clickstream — данные о переходах пользователей внутри Wikipedia
🔗 https://dumps.wikimedia.org/other/clickstream/readme.html

Сохраняйте подборку, делитесь с коллегами и добавляйте свои любимые ресурсы в комментариях
❤7
🔥 Приглашаем на бесплатный открытый вебинар курса «Go-разработчик. Базовый уровень»:
«Тесты в Go без боли: ловим баги раньше пользователей»

🗓 Когда: 5 ноября, 20:00 (мск)


Многие проверяют код, просто запуская программу и глядя на вывод. На вебинаре покажем, как писать тесты в Go так, чтобы ошибки находились до пользователей — без лишней боли и сложных фреймворков.
Что будет на вебинаре:

- Зачем нужны тесты, если программа «и так работает»: находим ошибку на граничном случае
- Первый тест в Go: файл _test.go, функция TestXxx, команда go test
- Никаких сторонних фреймворков — всё уже есть в языке
- Табличные тесты: как проверить десятки случаев, не копируя код
- Подтесты t.Run: у каждого случая своё имя, и сразу видно, какой сломался
- Понятные сообщения об ошибках без запуска отладчика
- Покрытие кода (go test -cover): находим непроверенные ветки

В результате вебинара вы:

- Научитесь писать тест к своей функции и запускать его одной командой
- Освоите табличные тесты — основной стиль тестирования в Go-проектах
- Поймёте, как тесты экономят время и помогают ловить баги раньше пользователей
- Привыкнете проверять граничные случаи (пустые строки, ноль, отрицательные числа)

Кому будет полезно:

Новичкам в Go, начинающим программистам на любом языке и тем, кто готовится к первой работе или тестовому заданию.

👉 Зарегистрируйтесь https://vk.cc/d3kw3R

Открытый урок проходит в рамках курса «Go-разработчик. Базовый уровень», на котором вы освоите язык Go с нуля до уверенной разработки приложений.

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
❤3👍1🌚1