Forwarded from QA Live 🚩 тестирование ПО
🔖 Почитать:
▪️Начнем с начала: автоматизируйте запуск ваших тестов
▪️Автоматизация учета и оборота тестовых устройств для QA-инженеров
▪️Как улучшить прогоны автотестов при помощи карантина
▪️Как я освоил автоматизацию
▪️Global Cache, или как выполнить BeforeAll в Playwright один раз для всех воркеров
▪️Вопросы на собеседовании по Playwright JavaScript с короткими ответами
▪️Сокращаем time-to-market: практическое руководство по QA
▪️Chaos Engineering: что это за метод тестирования, этапы и инструменты
Хабр
▫️Ускорение крупномасштабной миграции тестов с помощью LLM
▫️Лидерство в тестировании: обеспечение бизнес-процессов предприятия
▫️Awaitility: Полное руководство по тестированию асинхронных систем
▫️Записки одного QA. Часть 2: Советы и приёмы в автотестах на Playwright
▫️Тестирование Push-уведомлений: Полный чек-лист (ну или почти)
▫️Как устроено техническое интервью в отделе тестирования веб-приложений
▫️Тестирование в условиях отсутствия технической документации
▫️WireMock для QA: от ручных проверок до автотестов
▫️Как я в пинбол играл и баги находил
▫️Типы и тесты
Англо
▪️Lessons in Testing Same-Same, Just Different Projects
▪️Combinatorial Testing: A Weapon in High-Scale Distributed Systems
▪️QA Engineer in a Product Company: How I Left Outsourcing and Stopped Panicking Before Releases
▪️Testing AI: lessons from wearing three hats
▪️The Reimagined Tester and How to Grow One
▪️How to implement self-healing tests with AI
▪️+ Healenium: Making selenium tests truly self-healing
▪️How I Eliminated 80% of Flaky Selenium Tests in a High-Scale QA Environment
▪️Transforming UI Test Report: Harnessing HAR Files in Playwright
▪️Catching Duplicate API Calls in UI Tests
Также
▫️Как взломать и разрушить АЭС за 49 минут: разбор кибератаки на ядерный реактор
▫️Вайбкодинг мертв. На смену пришло агентное роевое программирование
▫️Сбой программного обеспечения: имеются ли основания для ссылки на форс-мажор?
▫️Решил поучаствовать в бета-тестировании одной из российских ОС: что из этого вышло
Посмотреть
Приятного вечера!
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍6🔥1
  Ошибки, которые можно избежать в SQL
#почитать
Ошибки в SQL можно условно разделить на несколько категорий:
Синтаксические ошибки. Это ошибки в написании SQL-кода: пропущенные запятые, неверные ключевые слова, неправильный порядок конструкции. Они чаще всего ловятся самим движком базы при попытке выполнить запрос.
Логические ошибки. Самые коварные. Код выполняется, но результат не тот. Например, неверный фильтр, JOIN по неправильному полю, перепутанный порядок WHERE и HAVING или лишний DISTINCT. Эти ошибки особенно опасны в аналитике, потому что могут привести к неверным бизнес-решениям.
Ошибки работы с NULL. NULL — это отдельная категория значений в SQL, и она требует особого внимания. Сравнение через = и != с NULL не работает так, как многие ожидают. Здесь нужны IS NULL и IS NOT NULL.
Ошибки при работе с JOIN. Отсутствие условия соединения, неправильный тип соединения (INNER вместо LEFT, или наоборот), дублирование строк из-за некорректного связывания — всё это может нарушить итоговую выборку.
Ошибки производительности. Использование SELECT * в больших таблицах, отсутствие индексов на полях фильтрации, тяжёлые подзапросы и вложенные SELECT’ы там, где можно обойтись CTE или JOIN — всё это тормозит выполнение и грузит сервер.
Ошибки доступа. Запрос к несуществующей таблице, попытка обращения к колонке с опечаткой, отсутствие прав на SELECT/INSERT — это технические ошибки, но тоже распространённые. Часто возникают при смене окружения (dev → prod, другой пользователь и т.д.).
⏱ Читать статью
#почитать
Ошибки в SQL можно условно разделить на несколько категорий:
Синтаксические ошибки. Это ошибки в написании SQL-кода: пропущенные запятые, неверные ключевые слова, неправильный порядок конструкции. Они чаще всего ловятся самим движком базы при попытке выполнить запрос.
Логические ошибки. Самые коварные. Код выполняется, но результат не тот. Например, неверный фильтр, JOIN по неправильному полю, перепутанный порядок WHERE и HAVING или лишний DISTINCT. Эти ошибки особенно опасны в аналитике, потому что могут привести к неверным бизнес-решениям.
Ошибки работы с NULL. NULL — это отдельная категория значений в SQL, и она требует особого внимания. Сравнение через = и != с NULL не работает так, как многие ожидают. Здесь нужны IS NULL и IS NOT NULL.
Ошибки при работе с JOIN. Отсутствие условия соединения, неправильный тип соединения (INNER вместо LEFT, или наоборот), дублирование строк из-за некорректного связывания — всё это может нарушить итоговую выборку.
Ошибки производительности. Использование SELECT * в больших таблицах, отсутствие индексов на полях фильтрации, тяжёлые подзапросы и вложенные SELECT’ы там, где можно обойтись CTE или JOIN — всё это тормозит выполнение и грузит сервер.
Ошибки доступа. Запрос к несуществующей таблице, попытка обращения к колонке с опечаткой, отсутствие прав на SELECT/INSERT — это технические ошибки, но тоже распространённые. Часто возникают при смене окружения (dev → prod, другой пользователь и т.д.).
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍6🔥2👌1
  🚀 Митап по QA: Тестирование без рутины: практики, кейсы, инструменты
Приглашаем вас на онлайн-митап, где мы обсудим практики и инструменты, которые помогают командам тестирования ускорять процессы, повышать качество и находить новые подходы к автоматизации.
Программа митапа:
✔️  Кухня регрессионного тестирования: как за 20 минут подать то, что раньше готовили две недели — Анастасия Давыдкина и Александр Вдовин, Ви.Tech
Когда-то полный регресс занимал две недели, требовал ручной работы трёх тестировщиков и всё равно пропускал баги. Сейчас он идёт всего 20 минут, а релизы выкатываются по четыре раза в день.
Разберём:
- С чего начать автоматизацию,
- Как держать автотесты стабильными,
- Как ускорить прогоны,
- И какие ошибки мы допустили, чтобы вы их не повторяли.
✔️  Эра умной валидации: нам всё ещё нужны ассерты? — Алексей Коледачкин
Ассерты — фундамент тестирования, но с приходом AI появляется второй контур, который ловит смысловые ошибки не только в ответе, но и в запросах.
На докладе вы узнаете:
- Где хватает классики, а где AI-валидация реально спасает,
- Как работает requests-ai-validator (правила, схема, код на 10 строк),
- Какие есть метрики и рамки безопасности: время, качество, приватность.
✔️  Как автоматизировать рутину и освободить время на важное — Артем Ерошенко, сооснователь Qameta Software
Каждый день мы тратим часы на повторяющиеся задачи. В мастер-классе разберём, как с помощью n8n построить рабочие процессы без кода.
Покажем:
- Настройку автоматизации за час,
- Создание Telegram-бота,
- Интеграции с инструментами команды.
➡️  Модератор: Олег Шмелев Ви.Tech, QA Head
➡️  Эксперт: Алексей Иванов, 2ГИС, QA Automation Engineer
🗓 25 сентября (четверг), 19:00 мск Онлайн
✅ Ссылка на регистрацию
Приглашаем вас на онлайн-митап, где мы обсудим практики и инструменты, которые помогают командам тестирования ускорять процессы, повышать качество и находить новые подходы к автоматизации.
Программа митапа:
Когда-то полный регресс занимал две недели, требовал ручной работы трёх тестировщиков и всё равно пропускал баги. Сейчас он идёт всего 20 минут, а релизы выкатываются по четыре раза в день.
Разберём:
- С чего начать автоматизацию,
- Как держать автотесты стабильными,
- Как ускорить прогоны,
- И какие ошибки мы допустили, чтобы вы их не повторяли.
Ассерты — фундамент тестирования, но с приходом AI появляется второй контур, который ловит смысловые ошибки не только в ответе, но и в запросах.
На докладе вы узнаете:
- Где хватает классики, а где AI-валидация реально спасает,
- Как работает requests-ai-validator (правила, схема, код на 10 строк),
- Какие есть метрики и рамки безопасности: время, качество, приватность.
Каждый день мы тратим часы на повторяющиеся задачи. В мастер-классе разберём, как с помощью n8n построить рабочие процессы без кода.
Покажем:
- Настройку автоматизации за час,
- Создание Telegram-бота,
- Интеграции с инструментами команды.
🗓 25 сентября (четверг), 19:00 мск Онлайн
✅ Ссылка на регистрацию
Please open Telegram to view this post
    VIEW IN TELEGRAM
  ❤6👍2🔥1
  В этом уроке мы смоделируем и нормализуем базу данных.
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍6🔥1
  Какой параметр в pg_hba.conf отвечает за метод аутентификации?
  Anonymous Quiz
    10%
    A) database
      
    10%
    B) user
      
    71%
    C) auth-method
      
    8%
    D) host
      
    🔥6👍3
  Как MySQL обрабатывает запросы с использованием оконных функций?
  Anonymous Quiz
    26%
    Выполняет оконные функции после выполнения всех фильтров и группировок
      
    40%
    Выполняет оконные функции до WHERE и GROUP BY
      
    23%
    Оконные функции не поддерживаются в MySQL
      
    12%
    Выполняет оконные функции параллельно с JOIN
      
    👍6🔥1
  Какой тип данных в PostgreSQL используется для хранения IP-адресов?
  Anonymous Quiz
    15%
    A) CIDR
      
    53%
    B) INET
      
    16%
    C) MACADDR
      
    17%
    D) JSONB
      
    👍7🔥1
  Как MySQL обрабатывает индексы при использовании функции GENERATED ALWAYS AS (expression) в виртуальных столбцах?
  Anonymous Quiz
    15%
    Индексы на виртуальные столбцы невозможны
      
    33%
    Можно создавать индексы только на STORED виртуальных столбцах
      
    37%
    Индексы создаются автоматически на все виртуальные столбцы
      
    15%
    Индексы создаются только при использовании PERSISTENT
      
    🔥6👍2
  Нашел, проверил, убедил: как мы организовали генерацию SQL-запросов, проверку сложных данных и при чем здесь Allure
#почитать
В статье опишем проблемы, с которыми сталкивались при ручном написании SQL-запросов и проверке данных: дублирование кода, сложность поддержки, отсутствие единого стиля и низкая информативность тестов. Для решения этих проблем мы разработали инструмент QueryBuilder, который позволяет динамически генерировать SQL-запросы с помощью Java-кода.
⏱ Читать статью
#почитать
В статье опишем проблемы, с которыми сталкивались при ручном написании SQL-запросов и проверке данных: дублирование кода, сложность поддержки, отсутствие единого стиля и низкая информативность тестов. Для решения этих проблем мы разработали инструмент QueryBuilder, который позволяет динамически генерировать SQL-запросы с помощью Java-кода.
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍5
  Forwarded from QA Live 🚩 тестирование ПО
🔖 Почитать:
▪️Как ChatGPT помогает при обучении
▪️Тест-долг: он существует и ежедневно мешает нам жить во всех окружениях
▪️Как отсутствующий часовой пояс сломал автоматизацию тестов
▪️Deep Links глазами тестировщика: как они работают
▪️«Эндотестирование: юнит-тестирование с мок-объектами»
▪️Как мы автоматизировали анализ упавших тестов с помощью AI: от хаоса к структуре
▪️Простоту охота навести: как легко тестировать клиент-серверные взаимодействия на примере WebSocket
▪️QA-инженер в 2025 году: скилсет джуниора и ожидания рынка
▪️Без опыта, но с перспективами: как начинающему QA составить сильное резюме
▪️Снова в айти или мой опыт обучения на ручного QA
▪️Интеграционные тесты в Go: как избавиться от флаков и боли
▪️Новые подходы в Swift для тестирования: разбор технологии Swift Testing
▪️Полный айсберг Android. Часть 1
Англоязычное
▪️Developing the Right Test Documentation
▪️Do We Really Need a Test Plan Before Testing? Whose Responsibility Is It?
▪️I think, therefore I test: the importance of thinking for testers
▪️What QA Taught Me About Being a Better Developer
▪️Why QA Keep Losing the Same Battles, even when Automation and AI is integrated
▪️AI Picks Tests To Run On A Bug
▪️Microservice Testing That Lets you Sleep At Night
▪️From Dependency Hell to Monorepo Harmony: How We 5X Test Engineering with a Gradle Multi-Module Architecture
▪️Playwright Agentic Coding Tips
▪️Leveraging Copilot to rapidly refactor test automation
👀 Посмотреть:
Удачного дня!
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍5
  Что означает опция CASCADE при удалении таблицы (pg)?
  Anonymous Quiz
    6%
    A) Удаляет только таблицу
      
    83%
    B) Удаляет таблицу и все объекты, зависящие от неё
      
    7%
    C) Откатывает транзакцию
      
    4%
    D) Создаёт резервную копию таблицы
      
    👍5
  Как MySQL обрабатывает оптимизацию запроса с STRAIGHT_JOIN?
  Anonymous Quiz
    24%
    Игнорирует порядок таблиц и выбирает оптимальный план
      
    51%
    Принудительно использует порядок таблиц, указанный в запросе
      
    7%
    Переставляет таблицы по алфавиту
      
    18%
    Выполняет только первый JOIN из списка
      
    👍6
  Какой из операторов в PostgreSQL используется для объединения результатов двух запросов без дубликатов?
  Anonymous Quiz
    24%
    A) UNION ALL
      
    13%
    B) INTERSECT
      
    57%
    C) UNION
      
    6%
    D) EXCEPT
      
    👍6🔥1
  Из бариста в программиста. Как я освоила SQL за неделю и стала тимлидом в IT-компании меньше, чем за год
#почитать
О работе в IT я никогда не думала. В школе у нас был углубленный курс информатики, где давали основы Basic, Java и Pascal, но для меня это было просто частью образования (не самой интересной). Потом я уехала из Якутии во Владивосток, чтобы выучиться на таможенное дело. Казалось, что это будет довольно прибыльным, и я действительно этим горела, даже проходила практику во Владивостокском морском порту. Но тема диплома, которую мне выдали, не совпадала с задачами в порту, и мне пришлось уйти.
Через полгода после универа в городе мне стало скучно. Я решила уехать в Москву, и начать новую жизнь. Конкретного плана я не придумала, и устроилась бариста. Кофейня была возле офиса Сбера. К нам часто заходили разработчики и другие IT-специалисты, с которыми я стала много общаться, и постепенно оказалась в окружении людей из индустрии.
Я по натуре человек очень увлекающийся и легко заражаюсь чужими интересами. Слушая разговоры о работе друзей, я и сама захотела «войти в айти». Когда я об этом рассказала, мой друг предложил начать с SQL — языка запросов к базам данных. Он считал его идеальным для новичков: интуитивно понятный синтаксис, основанный на простом английском, много доступных материалов для самообучения.
К тому моменту работа в общепите меня окончательно утомила, и я решила пойти ва-банк — уволилась и начала учиться. Немного сбережений у меня было, но нужно было как можно скорее устроиться на новую работу.
Сразу оговорюсь — мне учиться было проще, потому что со школы я знала Java и Pascal на базовом уровне. Это сформировало у меня техническое мышление, нужное для погружения в IT. Если у вас таких знаний нет, конечно, вам будет сложнее.
Я выделяла от пяти часов в день на SQL.
⏱ Читать статью
#почитать
О работе в IT я никогда не думала. В школе у нас был углубленный курс информатики, где давали основы Basic, Java и Pascal, но для меня это было просто частью образования (не самой интересной). Потом я уехала из Якутии во Владивосток, чтобы выучиться на таможенное дело. Казалось, что это будет довольно прибыльным, и я действительно этим горела, даже проходила практику во Владивостокском морском порту. Но тема диплома, которую мне выдали, не совпадала с задачами в порту, и мне пришлось уйти.
Через полгода после универа в городе мне стало скучно. Я решила уехать в Москву, и начать новую жизнь. Конкретного плана я не придумала, и устроилась бариста. Кофейня была возле офиса Сбера. К нам часто заходили разработчики и другие IT-специалисты, с которыми я стала много общаться, и постепенно оказалась в окружении людей из индустрии.
Я по натуре человек очень увлекающийся и легко заражаюсь чужими интересами. Слушая разговоры о работе друзей, я и сама захотела «войти в айти». Когда я об этом рассказала, мой друг предложил начать с SQL — языка запросов к базам данных. Он считал его идеальным для новичков: интуитивно понятный синтаксис, основанный на простом английском, много доступных материалов для самообучения.
К тому моменту работа в общепите меня окончательно утомила, и я решила пойти ва-банк — уволилась и начала учиться. Немного сбережений у меня было, но нужно было как можно скорее устроиться на новую работу.
Сразу оговорюсь — мне учиться было проще, потому что со школы я знала Java и Pascal на базовом уровне. Это сформировало у меня техническое мышление, нужное для погружения в IT. Если у вас таких знаний нет, конечно, вам будет сложнее.
Я выделяла от пяти часов в день на SQL.
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍6🔥1
  Как MySQL обрабатывает индексы при использовании функции JSON_EXTRACT в условиях WHERE?
  Anonymous Quiz
    22%
    Использует обычный B-tree индекс по JSON-столбцу
      
    25%
    Использует виртуальные столбцы с индексами для ускорения
      
    23%
    Игнорирует индексы и выполняет полное сканирование
      
    31%
    Использует полнотекстовый индекс по JSON
      
    👎7
  Что делает команда CREATE INDEX CONCURRENTLY?
  Anonymous Quiz
    11%
    A) Создаёт индекс, блокируя таблицу
      
    64%
    B) Создаёт индекс без блокировки записи в таблице
      
    23%
    C) Создаёт временный индекс
      
    2%
    D) Удаляет существующий индекс
      
    👍6🔥1
  Онлайн-школа QA.GURU проведет бесплатный вебинар для тестировщиков, которые хотят вырасти до уровня Senior AQA и выйти за рамки «рутинных автотестов».
Готовы узнать, какие навыки сегодня реально ценятся на рынке и как они помогают прокачать карьеру?
Приходите на занятие 9 октября в 13:00 по МСК. Участие бесплатное, регистрация обязательна!
— что изменилось на рынке и почему работодатели ждут от QA backend-навыков и умения создавать собственные инструменты;
— тренды 2025: какие Python-технологии (FastAPI, контейнеризация и др.) стали must-have для автоматизаторов;
— почему «просто автотестов» уже недостаточно и как инженерный подход делает вас сильнее в глазах работодателя;
Зарегистрируйтесь сейчас, чтобы успеть занять место! 🎯
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍6
  Как MySQL обрабатывает запрос с LOCK IN SHARE MODE?
  Anonymous Quiz
    28%
    Блокирует строки для чтения другими транзакциями
      
    53%
    Позволяет другим транзакциям читать, но не изменять заблокированные строки
      
    10%
    Блокирует строки для записи и чтения
      
    9%
    Не блокирует строки, только помечает их
      
    👍6
  Forwarded from QA Live 🚩 тестирование ПО
🔖 Почитать:
💡 TestEngineer
▫️Попытка создания интегральной метрики качества продукта
▫️Тестирование в залогиненном состоянии с расширением Playwright MCP
▫️Быстрый рефакторинг e2e автотестов в Copilot
▫️Как работает Playwright MCP — подробно
▫️Тестировать с умом
💬 Также
▫️Автоматизация учета и оборота тестовых устройств, тестирование контрактов, компонентов, UX, миграций, охота на баги, ИИ: новости QA за третий квартал-2025
▫️Работа с кэшем в автотестах
▫️Мнение: неизвестные пробелы в тестовом покрытии
▫️Что показали 15 лет работы с пирамидой тестирования
▫️Все, что нужно знать о регрессионном тестировании в 2025 году
▫️Как тестировать взаимодействие с голосовыми интерфейсами и виртуальными помощниками
⚙️Хабр
▫️MES-система глазами тестировщика
▫️Core Web Vitals на практике
▫️Как тестирование влияет на репутацию бренда
▫️Как наша команда QA в 3 раза ускорила работу с помощью собственного ИИ-агента
▫️Способы стабилизации автотестов на backend: опыт сервиса Звук
▫️Сколько трафика выдержит сайт на Next.js: нагрузочные тесты, SSR и предрендеринг
▫️Автоматизируем синхронизацию тест-кейсов в ТестОпс: больше никаких ручных обновлений
▫️От запахов к стабильности: рефакторим тесты на JUnit + Selenide
▫️Performance monitor и не только: продолжаем тестировать производительность в Chrome DevTools | Сбер
▫️11 способов мышления тестировщика: как и зачем переключаться между подходами
🔥Нашумевшее
▫️Искра Жизни: как рождаются продукты
▫️Восстание терпил
▫️Дача-like кодинг
▫️Крик души: я устал читать сгенерированные статьи
▫️Как я, не разработчик, читаю туториал, который ты, разработчик, написал для меня
▫️Хватит писать «чистый» код. Пора писать понятный код
▫️Рынок эйчара
▫️Ограничение контекстного окна GPT-5
▫️Как владение кошкой влияет на мозг человека (и на мозг кошки)
▫️Я сварил палки, выложил на Авито и заработал 10 млн за год
👀Посмотреть
✅ Подробный дайджест с описаниями и картинками
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍6❤2🔥1
  Какой уровень изоляции транзакций в PostgreSQL предотвращает «фантомные» чтения?
  Anonymous Quiz
    32%
    A) Read Committed
      
    27%
    B) Repeatable Read
      
    21%
    C) Serializable
      
    21%
    D) Read Uncommitted
      
    👍7🤮2🔥1