Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7😁4
JWT, или JSON Web Token
Авторизация — наиболее распространенный сценарий использования JWT. После аутентификации пользователя JWT позволяет ему получать доступ к определённым ресурсам или сервисам, реализуя тем самым механизм авторизации.
То есть JWT передаёт серверу информацию о пользователе и его роли/правах доступа.
JWT устраняет необходимость хранения сессионных данных на сервере, что снижает нагрузку.
Структура JWT
JWT состоит из трёх частей: Header, Payload и Signature.
1. Header (Заголовок)
Обычно содержит тип токена (JWT) и алгоритм подписи (например, RSA, HMAC).
json
{
"alg": "RS384",
"typ": "JWT"
}```
2. Payload (Полезная нагрузка)
Основная часть, содержащая данные о пользователе и дополнительные параметры, например:
🔹
🔹
🔹
🔹
3. Signature
Для создания подписи используется комбинация алгоритма хеширования и секретного ключа или пары открытого/закрытого ключей:
Формат JWT
— Как работает JWT
1. Авторизация: После входа пользователя в систему (например, по логину и паролю) сервер генерирует JWT, содержащий информацию о пользователе (имя, роль, права доступа) и другие важные параметры.
2. Хранение токена: Клиент получает токен и сохраняет его (обычно в
3. Использование токена: Каждый последующий запрос к серверу включает токен в заголовке
— Как происходит проверка токена
1. Сервер получает JWT.
2. Декодирует части
3. Проверка подписи: с помощью секретного ключа или открытого ключа сервер пересчитывает подпись токена и сравнивает её с полученной.
4. Проверка срока действия токена: по параметру
Single Sign-On (SSO) на базе JWT
JWT можно использовать для реализации Single Sign-On (SSO) — входа в систему один раз с возможностью последующего доступа к нескольким независимым приложениям без повторной аутентификации. JWT в этом случае служит маркером доступа, сохраняемым после первой аутентификации и используемым для авторизации в других сервисах. Например, после входа на корпоративную платформу пользователь может использовать один и тот же JWT для доступа к электронной почте, файлам или чатам.
Полезные ресурсы:
🔹 JWT playground
🔹 Видеоролик с объяснением
👉 @QAPortal
JWT — это открытый стандарт RFC 7519, который определяет компактный и автономный способ безопасной передачи информации между сторонами в виде JSON-объекта. Эта информация может быть проверена и заслуживает доверия, так как подписана цифровой подписью. JWT может использовать либо общий секрет (через алгоритм HMAC), либо пару открытого и закрытого ключей с использованием RSA или ECDSA.
Авторизация — наиболее распространенный сценарий использования JWT. После аутентификации пользователя JWT позволяет ему получать доступ к определённым ресурсам или сервисам, реализуя тем самым механизм авторизации.
То есть JWT передаёт серверу информацию о пользователе и его роли/правах доступа.
JWT устраняет необходимость хранения сессионных данных на сервере, что снижает нагрузку.
Структура JWT
JWT состоит из трёх частей: Header, Payload и Signature.
1. Header (Заголовок)
Обычно содержит тип токена (JWT) и алгоритм подписи (например, RSA, HMAC).
json
{
"alg": "RS384",
"typ": "JWT"
}```
2. Payload (Полезная нагрузка)
Основная часть, содержащая данные о пользователе и дополнительные параметры, например:
sub — идентификатор пользователяiat — время выдачи токенаexp — время истечения срока действия токенаrole — роль пользователя (например, "admin"){
"sub": "1234567890",
"name": "John Doe",
"admin": true,
"iat": 1516239022
}3. Signature
Для создания подписи используется комбинация алгоритма хеширования и секретного ключа или пары открытого/закрытого ключей:
signature = hashing_algorithm(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
secret
)
Формат JWT
<base64Url(header)>.<base64Url(payload)>.<base64Url(signature)>
— Как работает JWT
1. Авторизация: После входа пользователя в систему (например, по логину и паролю) сервер генерирует JWT, содержащий информацию о пользователе (имя, роль, права доступа) и другие важные параметры.
2. Хранение токена: Клиент получает токен и сохраняет его (обычно в
localStorage или в cookies).3. Использование токена: Каждый последующий запрос к серверу включает токен в заголовке
Authorization. Сервер проверяет его подлинность, подпись и срок действия (по iat/exp), пока токен действителен.— Как происходит проверка токена
1. Сервер получает JWT.
2. Декодирует части
header и payload.3. Проверка подписи: с помощью секретного ключа или открытого ключа сервер пересчитывает подпись токена и сравнивает её с полученной.
4. Проверка срока действия токена: по параметру
exp. Если токен истёк, пользователь может получить новый токен с помощью refresh-токена (обычно это происходит автоматически).Single Sign-On (SSO) на базе JWT
JWT можно использовать для реализации Single Sign-On (SSO) — входа в систему один раз с возможностью последующего доступа к нескольким независимым приложениям без повторной аутентификации. JWT в этом случае служит маркером доступа, сохраняемым после первой аутентификации и используемым для авторизации в других сервисах. Например, после входа на корпоративную платформу пользователь может использовать один и тот же JWT для доступа к электронной почте, файлам или чатам.
Полезные ресурсы:
Please open Telegram to view this post
VIEW IN TELEGRAM
JSON Web Tokens - jwt.io
JWT.IO - JSON Web Tokens Introduction
Learn about JSON Web Tokens, what are they, how they work, when and why you should use them.
👍8❤3
Помогите своим AI-агентам действительно "видеть" сайт, который вы тестируете.
Если вы использовали Playwright MCP не только для demo-логинов из YouTube, то, скорее всего, сталкивались с проблемой: агент не видит часть элементов на странице, путается или вообще теряет контекст.
Причина простая — Playwright MCP передаёт в LLM ARIA snapshot, а не полный список interactable-элементов из DOM.
Ребята сделали апгрейд для MCP, который:
• сериализует полное DOM-дерево
• возвращает все interactable-элементы
• передаёт полноценный контекст страницы
В результате агент получает полную картину страницы, понимает, как работать с элементами, и может генерировать значительно более качественные и широкие тестовые сценарии с первой попытки.
Ссылка на решение:
https://www.treegress.com/treegress-mcp-browser
👉 @QAPortal
Если вы использовали Playwright MCP не только для demo-логинов из YouTube, то, скорее всего, сталкивались с проблемой: агент не видит часть элементов на странице, путается или вообще теряет контекст.
Причина простая — Playwright MCP передаёт в LLM ARIA snapshot, а не полный список interactable-элементов из DOM.
Ребята сделали апгрейд для MCP, который:
• сериализует полное DOM-дерево
• возвращает все interactable-элементы
• передаёт полноценный контекст страницы
В результате агент получает полную картину страницы, понимает, как работать с элементами, и может генерировать значительно более качественные и широкие тестовые сценарии с первой попытки.
Ссылка на решение:
https://www.treegress.com/treegress-mcp-browser
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5
Мышление QA: что происходит у меня в голове, когда я тестирую
В работе QA важно уметь задавать вопросы и иногда побыть «детективом» – видеть связи между изменениями и понимать, к чему они могут привести для продукта в целом.
В нашем сегодняшнем материале автор поделится своим взглядом на работу QA-инженера, расскажет о мышлении тестировщика, профессиональном скепсисе, подходе к поиску неочевидных багов и важности взаимодействия с разработкой
Читайте тут
👉 @QAPortal
В работе QA важно уметь задавать вопросы и иногда побыть «детективом» – видеть связи между изменениями и понимать, к чему они могут привести для продукта в целом.
В нашем сегодняшнем материале автор поделится своим взглядом на работу QA-инженера, расскажет о мышлении тестировщика, профессиональном скепсисе, подходе к поиску неочевидных багов и важности взаимодействия с разработкой
Читайте тут
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Please open Telegram to view this post
VIEW IN TELEGRAM
😁13❤1
Вышел свеженький Playwright 1.60
HAR-архивы и
https://www.linkedin.com/pulse/playwright-v1600-just-dropped-heres-whats-hot-michal-drajna-7ohie/
👉 @QAPortal
HAR-архивы и
drop() - прям очень годно.https://www.linkedin.com/pulse/playwright-v1600-just-dropped-heres-whats-hot-michal-drajna-7ohie/
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍4
Please open Telegram to view this post
VIEW IN TELEGRAM
😁29❤3
This media is not supported in your browser
VIEW IN TELEGRAM
Совет по Chrome Dev Tools
Знаете ли вы, что можно быстро изменить цветовую схему прямо в Chrome Dev Tools, чтобы протестировать сайт в тёмном/светлом режиме?
Мы можем быстро переключать настройку
👉 @QAPortal
Знаете ли вы, что можно быстро изменить цветовую схему прямо в Chrome Dev Tools, чтобы протестировать сайт в тёмном/светлом режиме?
Мы можем быстро переключать настройку
color-scheme напрямую из Chrome Dev Tools. Нет необходимости менять системные настройки для этого Please open Telegram to view this post
VIEW IN TELEGRAM
👍8👀3
Please open Telegram to view this post
VIEW IN TELEGRAM
😁14❤7
Microsoft выкатила крупное обновление Playwright, заточенное специально под агентов – Webwright!
Это реально меняет правила игры для агентного использования браузера: каждая сессия превращается в переиспользуемый воркфлоу.
https://microsoft.github.io/Webwright/
👉 @QAPortal
Это реально меняет правила игры для агентного использования браузера: каждая сессия превращается в переиспользуемый воркфлоу.
https://microsoft.github.io/Webwright/
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3
QA больше не нужен?
Нужен.
Но не тот, который просто прошёл курс и выучил, что такое баг-репорт.
Рынок стал жёстче:
простых входов меньше, требований больше, конкуренции больше. Если ты хочешь конкурировать, то должен быть в курсе всего.
В depedence || QA - про тестирование без сказок:
- баг-репорты;
- API и логи;
- автотесты;
- Java / JavaScript;
- собеседования;
- рост до middle;
- ИИ и рынок QA.
Без “выучи за 2 недели”.
Без мотивационного шума.
Без воды.
Для тех, кто хочет быть не кликером, а инженером.
Нужен.
Но не тот, который просто прошёл курс и выучил, что такое баг-репорт.
Рынок стал жёстче:
простых входов меньше, требований больше, конкуренции больше. Если ты хочешь конкурировать, то должен быть в курсе всего.
В depedence || QA - про тестирование без сказок:
- баг-репорты;
- API и логи;
- автотесты;
- Java / JavaScript;
- собеседования;
- рост до middle;
- ИИ и рынок QA.
Без “выучи за 2 недели”.
Без мотивационного шума.
Без воды.
Для тех, кто хочет быть не кликером, а инженером.