Обновить

Тестирование

Сначала показывать
Порог рейтинга

Почему зелёный CI не гарантирует, что система работает

Кейс из QA automation: как миграция на TypeScript привела к скрытому удвоению тестов без единого падения в CI

CI зелёный.

Тесты проходят.

Pull request’ы мерджатся.

Но система уже сломана.

И самое опасное — это не видно ни в логах, ни в отчётах CI.

В большинстве команд CI воспринимается как индикатор здоровья системы:

  • зелёный CI → всё работает

  • красный CI → есть проблема

Это удобная модель. Но она не всегда верна.

Контекст кейса

После миграции проекта с JavaScript на TypeScript мы заметили странное поведение:

  • CI стал выполняться почти в 2 раза дольше

  • тесты не падали

  • ошибок не было

  • метрики оставались “нормальными”

На первый взгляд — ничего критичного.

Что происходило на самом деле

Playwright начал подхватывать одновременно два набора тестов:

  • .spec.js

  • .spec.ts

В результате один и тот же тестовый набор запускался дважды.

Самое неприятное — CI не просто не показывал проблему. Он создавал иллюзию, что всё становится лучше: время выполнения росло постепенно, и это воспринималось как “нормальная деградация после миграции”.

Почему это было незаметно

Проблема усугублялась полным отсутствием сигналов:

  • CI оставался зелёным

  • тесты не фейлились

  • никаких warning’ов

  • никаких алертов

Единственный симптом — увеличение времени выполнения. Которое списали на “ну TypeScript, наверное тяжелее”.

Как проблема была обнаружена

Случайно. Ближе к завершению миграции, при удалении .js файлов, количество тестов внезапно сократилось примерно в два раза:

  • было ~240

  • стало ~120

До этого момента CI фактически выполнял двойную работу — без каких-либо признаков аномалии.

Root cause

Root cause оказался банальным — и именно поэтому его так долго не замечали.

В playwright.config.ts отсутствовал явный testMatch. Playwright по умолчанию подхватывает все файлы, соответствующие glob-паттерну — и .js, и .ts одновременно.

Фикс — одна строка:

testMatch: [‘**/*.spec.ts’]

Но чтобы до неё дойти, нужно было сначала понять, что вообще происходит.

Архитектурный вывод

Большинство проблем в тестовых системах не проявляются как падения.

Они проявляются как:

  • дублирование выполнения

  • скрытая деградация производительности

  • изменения в поведении runner’а без изменений в тестах

И у них нет алертов — потому что мы их не проектируем.

Например, в нашем случае проблему можно было бы поймать простым счётчиком discovered tests в CI.

Финальный вывод

CI — это не инструмент контроля качества системы. Это инструмент контроля того, что тесты не упали.

И если вы используете его как индикатор качества — вы просто получаете ложную уверенность быстрее.

CI отражает только одно: тесты выполнились без явных ошибок.

CI не отражает: тесты запустились правильно, в правильном количестве, с правильными предположениями об окружении.

Если система может быть “зелёной” и при этом работать некорректно — значит у вас есть статус выполнения, но нет наблюдаемости.

Как это выглядит в реальной системе

Именно этот кейс лёг в основу проекта, который я собирала как QA portfolio. В pipeline добавлен счётчик discovered tests: если количество отклоняется от ожидаемого, CI падает явно, а не молчит. Рядом — buggy branch с намеренно сломанной конфигурацией, чтобы можно было воспроизвести и починить самостоятельно.

Код и структура проекта: GitHub (https://github.com/Ariless/clinic-booking-api-tests)

Если собираешь QA портфолио или готовишься к техническому собеседованию — в Telegram-канале Тесты как система (https://t.me/qa_as_a_system) разбираю такие кейсы с кодом и объяснением: что показывать, как объяснять решения, какие находки работают на собеседовании.

Теги:
+2
Комментарии6

Тестировщик докапывается — и это не баг, а фича

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

В новом выпуске «Не воспроизводится» Оля Шнайдер и Сережа Атрощенков разбирают тестирование не как набор действий, а как способ мышления. Почему QA ищет не подтверждение своей правоты, а подтверждение реальности? В чём разница между «душнилой» и внимательным инженером — и как донести эту разницу до коллег? Как поиск сложных багов превращается в настоящий квест, и почему отсутствие результата — это тоже результат? И наконец, как справляться с ощущением, что «что-то не так», даже когда работа сделана хорошо.

Слушайте выпуск на всех подкаст-платформах:

🎧 Яндекс Музыка
🔵 VK Видео 
📺 YouTube
Ⓜ️ Mave

Теги:
+10
Комментарии0

Что дальше в Пайплайне? Первый выпуск — в эфире!

Мы запустили новый формат: никаких слайдов и скучных докладов.

Шоу «Что дальше в Пайплайне» — это дружеская встреча, где специалисты делятся своими историями из профессиональной жизни в формате живого повествования. Здесь нет докладов — только забавные, поучительные и неожиданные случаи из работы в пайплайнах разработки, тестирования и деплоя.

Первый выпуск посвящаем QA-специалистам. Вместе с коллегами из Столото и Юзтех собрались, чтобы рассказать о том, что пошло не так в реальных проектах и угадать, чем закончились кейсы.

Смотреть «Часть 1: QA-версия»

Ещё больше о мероприятиях — в нашем TG-канале.

Теги:
+1
Комментарии0

Проблемы с производительностью обычно проявляются в самый неподходящий момент: когда резко растет нагрузка или система обрабатывает сложные сценарии.

Именно для таких ситуаций существует нагрузочное тестирование. Но сам процесс — это не только запуск тестов. Нужно собрать требования, подготовить инфраструктуру, настроить инструменты и синхронизировать работу команд.

Егор, аналитик в Naumen Contact Center, рассказал, как внутри продукта устроено нагрузочное тестирование и почему «запустить тест» — самая простая часть.

1️⃣ Что такое нагрузочное тестирование? 

Нагрузочное тестирование показывает, насколько хорошо система справляется с большим количеством пользователей или объемом данных. В случае контакт‑центра это, например:

  • количество одновременно работающих операторов

  • нагрузка на входящие и исходящие вызовы

2️⃣ Почему аналитик вообще занимается нагрузочным тестированием?

У каждого аналитика в нашей команде есть свои зоны экспертизы. Я, например, начал погружаться в тему производительности, поэтому нагрузочное тестирование со временем стало частью моей работы.

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

3️⃣ Когда нужно проводить нагрузочное тестирование?

Есть несколько типичных ситуаций, когда без него не обойтись:

  • Регулярные проверки перед релизом или после обновления серверов.

  • Тестирование новых фич — если изменения потенциально могут повлиять на производительность.

  • Запросы от клиентов или команды внедрения — когда нужно проверить нагрузку или конфигурацию.

  • Внутренние задачи разработки — когда команде нужно проверить свои решения под нагрузкой.

Однако протестировать все невозможно — это требует слишком больших ресурсов. Поэтому мы используем карту нефункциональных требований: проходим по чек-листу и смотрим, могут ли изменения повлиять на производительность системы.

4️⃣ Как принимается решение о проведении тестирования?

Обычно это происходит на встрече по оценке фичи. В обсуждении участвуют тимлиды разработки, архитекторы, тестировщики и другие cпециалисты. Аналитик приносит информацию по изменениям, а дальше команда совместно решает, нужен ли нагрузочный тест.

5️⃣ Как устроен процесс нагрузочного тестирования?

Процесс можно разделить на три этапа:

  1. Первичная аналитика — собираем требования и определяем цель.

  2. Детальная аналитика — описываем сценарии, метрики, инфраструктуру.

  3. Проведение тестов — запускаем тестирование и анализируем результаты.

6️⃣ Почему нагрузочное тестирование требует отдельной инфраструктуры?

Для более-менее реалистичного тестирования недостаточно одного сервера. В нашем случае используются несколько гипервизоров, десятки виртуальных машин, серверы генерации и приема нагрузки, а также инструменты вроде Gatling, JMeter, Grafana и Ansible.

Отдельные компоненты эмулируют работу операторов и клиентов. Например, для проверки нескольких тысяч операторов фактически собирается отдельный контур.

7️⃣ Почему даже короткий тест может занимать полтора часа?

Потому что сам прогон — только часть процесса. До запуска нужно подготовить окружение, очистить старые данные, проверить сервисы, настроить мониторинг и применить параметры. После — собрать артефакты, метрики и результаты. Поэтому тест на 20 минут превращается в полтора часа работы.

8️⃣ Что происходит после тестирования?

После прогона команда анализирует логи, метрики, бизнес-отчеты и дашборды в Grafana. Есть основные метрики, которые проверяются постоянно. Для контакт-центра это, например, скорость установления соединения, скорость открытия экранных форм, переходов между ними и закрытия экранных форм.

Если эти показатели проседают, тест нельзя считать успешно пройденным, даже если сама фича формально работает.

После анализа команда либо фиксирует результаты, либо заводит задачи на доработку сервисов, окружения или инструментов.

Теги:
0
Комментарии0

Бесплатный сервис для базового мониторинга сайта и срока жизни ssl сертификата

SaveTrace
SaveTrace

Что умеет SaveTrace?

- Мониторинг доступности по HTTP/HTTPS для сайтов и API.

- Отслеживание времени отклика, чтобы замечать деградацию до реального падения.

- Контроль SSL-сертификатов и сроков их действия.

- Уведомления о проблемах и история инцидентов в понятном интерфейсе.

Теги:
+7
Комментарии2

Ты один QA на проекте? Это твой шанс или риск?

Соло-тестировщик — звучит гордо, но как не утонуть в задачах без онбординга и поддержки? Эксперт Юзтеха на совместном митапе Moscow QA #23 x ИнфоТеКС & Юзтех разобрала типичные сложности и показала, как соло-формат может стать точкой роста, а не дорогой к выгоранию.

Будет полезно, если вы хотите понять, как не выгореть и вырасти.

P.S. Заходите в наш TG-канал, там мы рассказываем о технических мероприятиях и конференциях, делимся выступлениями экспертов, обсуждаем подборки на технические и ИБ темы.

Теги:
0
Комментарии0

В конце апреля Dreame анонсировала для России два вертикальных пылесоса и флагманский робот X60 Ultra Complete. В пресс-релизе к последнему уже знакомый набор технологий: выдвижной лидар (о нем я упоминал в обзоре на модель Aqua10 Ultra Roller), ИИ-камеры, технология Pet Care, тонкий корпус (7,95 см) и станция с подогревом до 100 °C. Но главная цифра – сила всасывания до 35 000 Па (к слову на сайте производителя этот параметр указан как максимальная мощность всасывания). И вот про эти паскали стоит поговорить отдельно, потому что именно они создают иллюзию чудовищной силы всасывания.

Краткий ликбез: в технических документах «сила всасывания» (точнее, статическое разряжение) измеряется в паскалях или миллибарах. Это давление, которое создаёт вентилятор при полностью перекрытом входном отверстии. Никакого воздушного потока при этом нет. Это характеристика того, насколько глубокий вакуум способен создать двигатель с крыльчаткой. Реальная же полезная мощность всасывания (которая влияет на то, сколь эффективно пылесос вытягивает мусор из ковра) вычисляется как произведение разряжения (Па) на объёмный расход воздуха (м³/с). Результат – в ваттах или аэроваттах. Незначительную разницу в 0,17% между Вт и аВт в принципе можно смело проигнорировать.

Производители роботов-пылесосов почти никогда не публикуют информацию о расходе воздуха в л/с. Вероятно, потому что... у типичного робота он невелик – порядка 5-10 л/с. Если взять заявленные Dreame 35 000 Па (что очень много даже для статического давления робота, обычно достаточно 3-10 кПа) и умножить на реальный расход, скажем, 8 л/с = 0,008 м³/с, то получим мощность всасывания около 280 Вт. Для робота это прилично, но далеко не «промышленный пылесос». И это при условии, что 35 000 Па достижимы в реальной конфигурации, а не только на заглушенном патрубке без щёток, фильтра и пылесборника.

На форумах можно встретить два лагеря. Одни говорят, что:

«Паскали – это единственное, что хоть как-то сравнимо у всех, поэтому прежде всего смотрите на них».

Другие (и я скорее отношусь к ним) утверждают, что без расхода воздуха паскали – маркетинговая игрушка. Как пример честного подхода некоторые пользователи приводят профессиональную продукцию компании Karcher: мол, «для моделей линеек NT, T, IV (проводные и стационарные) производитель указывает в характеристиках и разряжение, и расход, по которым можно легко рассчитать реальную мощность всасывания в ваттах и увидеть её соотношение с потребляемой мощностью устройства». При этом отмечу, что бытовая серия упомянутого выше бренда не обременена такими подробностями.

Понятное дело, что тот же новоявленный робот-пылесос Dreame к профессиональной линейке устройств мы отнести также не можем – он бытовой. Вывод напрашивается сам собой: публикация полных параметров – это политика конкретного сегмента, а не всей компании.

В какой-то мере это логично, но для продвинутого пользователя непрактично. Есть подозрение, что если производители роботов предоставят информацию о реальном расходе воздуха для проведения подсчетов, – может выясниться, что разница между «бюджетными» роботами-пылесосами за 15+ тысяч и «флагманами» за 140+ тысяч в реальной уборке не столь драматична, как разница в цифрах на коробке.

Так что 35 000 Па у X60 – это красиво, но почти бесполезно без данных о расходе. Выдвижной лидар и подогрев швабр до 100 °C куда более осязаемые фишки. Остаётся вопрос к сообществу: как вы оцениваете реальную эффективность своих роботов – по ощущениям, или есть способ получить информацию о недостающих технических параметрах? Может, кто-то проводил собственные замеры с анемометром и манометром?

Теги:
0
Комментарии0

Ответственность за качество: почему это не только твоя проблема

Работа тестировщика — это постоянный поток задач, ожиданий и комментариев со всех сторон: менеджеры, разработчики, руководство.

Работа тестировщика — это постоянный поток задач, ожиданий и комментариев со всех сторон: менеджеры, разработчики, руководство. И где-то в этом потоке легко потерять и эффективность, и себя.

В новом выпуске «Не воспроизводится» Оля Шнайдер и Сережа Атрощенков поговорили о том, как в этой гонке сохранить голову. В гостях — Вася Юдин, тимлид команды, которая делает инструменты для тестировщиков Авито. Обсудили три вещи, о которых в профессиональном контексте говорят редко: почему ответственность за качество — это не груз одного QA, а дело всей команды; как давать и принимать критику, не превращая это в стресс; и стоит ли вообще пытаться вывозить всё в одиночку.

🎧 Слушайте выпуск подкаста на всех подкаст-платформах:

Обсуждение тем, тренды в QA и, конечно, мемы — в Telegram-канале «Не воспроизводится».

Добро пожаловать в мир тестирования. Баги прилагаются.

Ещё больше экспертизы собрали для вас на сайте: смотрите наши лонгриды, новости, и видео. А узнать, как стать частью команды AvitoTech, можно вот здесь.

Теги:
+28
Комментарии0

Сходили с лекциями в университеты — теперь делимся впечатлениями

Мы любим тестирование и любим о нём рассказывать. Недавно мы, QA-лиды Настя и Катя, выступили перед студентами НГТУ, НГУ и Бауманки. Ниже — как всё прошло, что ценного вынесли для себя и почему горящие глаза студентов так заряжают.

Настя Золотых, технический руководитель группы QAA

Я люблю свою работу и люблю о ней говорить: и с коллегами, с которыми находимся в одном контексте, и с людьми извне — это крутая возможность посмотреть на свой опыт под другим углом и челлендж по объяснению на непривычном языке, с аналогиями и примерами не из мира IT. Так что когда появилась возможность выступить перед студентами АВТФ НГТУ с обзорной лекцией о профессии — я ни секунды не сомневалась, что это точно для меня.

К тому же в любом публичном выступлении получаешь личный профит: структурируешь знания, находишь новые идеи и места для развития. Ведь чтобы подготовить хороший рассказ, нужно разобрать всё до мелких кусочков, а потом собрать — почти как пазл, только на выходе получается не одна картинка, а несколько заготовок для докладов/воркшопов/статей/задачек. Например, при подготовке я придумала посмотреть на тестирование с точки зрения теории информации и даже нашла пару тем для дипломной работы 😅

Отдельно порадовала реакция ребят — около 20 вопросов про текущее и будущее тестирования, про карьерные перспективы и начало пути. Плюс позитивный фидбек от преподавателя.

Для меня это особенно ценно, потому что когда я заканчивала институт и выбирала профессию, то ничего не знала про QA, про это нигде не рассказывали — всё тестирование вокруг было в основном ручным, что меня не вдохновляло. Поэтому я пошла в бекенд-разработку и лишь спустя два года нашла своё настоящее призвание. Если кому-то из ребят я смогу помочь пораньше найти подходящую роль — буду по-настоящему счастлива!

Катя Лахтина, руководитель группы тестирования UGC (это я)

У меня было два выступления перед студентами НГУ и Бауманки, рассказывала про тестирование: что это за профессия, как устроена наша работа в 2ГИС, какие мифы существуют вокруг тестирования и как дела обстоят на самом деле. Делилась тем, какие возможности открывает эта сфера, и почему она важна.

Мне нравится выступать — рассказывать, делиться своей историей и, может быть, вдохновлять. Когда‑то я сама не знала, кем хочу стать, когда вырасту. У меня экономическое образование, потом была работа в рекламном отделе, и про сферу тестирования я узнала совершенно случайно — по совету друзей. Если бы кто‑то рассказал мне об этом раньше, мой путь, возможно, получился бы проще. Именно поэтому мне кажется важным сейчас об этом говорить, особенно со студентами.

Ещё мне важно говорить о культуре тестирования. Я собеседую кандидатов на вакансии тестировщиков и вижу, насколько разной бывает атмосфера в их командах.

В некоторых компаниях тестирование до сих пор воспринимают как что‑то второстепенное, застревают на уровне ручных проверок. В хороших командах все иначе: тестировщик — равноправная часть продукта, качество — общая ответственность. И для меня важно это подсветить. Хочется, чтобы культура тестирования в целом становилась здоровее — чтобы ребята знали, как выглядит «хорошо» и почему это важно.

А ещё такие встречи невероятно вдохновляют. Видеть, как у студентов загораются глаза, как они подходят после выступления, задают вопросы, интересуются тестовыми заданиями — это очень заряжает. Через их вопросы можно понять, как они мыслят, и это безумно интересно. В такие моменты понимаешь, зачем всё это — чтобы кто‑то из них вдруг подумал: «А вот это, кажется, моё».

Если хотите, чтобы мы пришли к вам с лекцией — пишите в комменты. И заглядывайте в наш канал, чтобы быть в курсе других активностей и мероприятий для тестировщиков.

Теги:
0
Комментарии0

Если тесты есть, а уверенности в них нет — 10 открытых уроков по тестированию (апрель‑май)

Тестирование в 2026 — это уже давно не только про «проверить, что работает». Это про архитектуру тестов, нагрузку, интеграции и всё чаще — про работу с AI.

Чувствуете, что текущего инструментария уже не хватает (или просто хочется систематизировать практику)? Собрали серию открытых уроков по тестированию — от базовых вещей до более инженерных подходов.

🔥 Что будет:

28 апреля 20:00. «Первый нагрузочный тест в Apache JMeter»
открытый урок курса «Нагрузочное тестирование»

28 апреля 20:00. «Архитектура тестового фреймворка: от хаоса к стабильности»
открытый урок курса «Автоматизатор тестирования на Python»

28 апреля 20:00. «Контрактные тесты в Kotlin: как подружить фронт и бэкэнд»
открытый урок курса «Автоматизатор тестирования на Kotlin»

29 апреля 20:00. «Качество C#‑кода: от модульных тестов к системному подходу»
открытый урок курса «C#-разработчик. Продвинутый уровень»

7 мая 20:00. «Тестирование микросервисов на Go: почему ваш сервис ломается под 1000 RPS»
открытый урок курса «Микросервисы на Go»

19 мая 20:00. «Навыки нагрузочного тестирования и их роль в развитии инженера»
открытый урок курса «Нагрузочное тестирование»

19 мая 20:00. «Введение в OpenTelemetry и основы наблюдаемости»
открытый урок курса «C#-разработчик. Продвинутый уровень»

21 мая 20:00. «Суперсилы Kotlin для удобных UI‑автотестов»
открытый урок курса «Автоматизатор тестирования на Kotlin»

21 мая 20:00. «ИИ как ассистент QA: пишем API‑тесты с нуля»
открытый урок курса «Автоматизатор тестирования на Python»

21 мая 20:00. «API Gateway и не только: шаги к идеальной архитектуре внешних API»
открытый урок курса «Архитектор программного обеспечения»

Подборка получилась разнообразной — и это как раз полезно. Можно точечно закрыть конкретный пробел: разобраться с нагрузочным тестированием, контрактами, API‑тестами или архитектурой фреймворка. А можно посмотреть шире — как меняется роль QA, когда тестирование всё теснее связано с разработкой, архитектурой, наблюдаемостью и AI‑инструментами.

Все уроки бесплатные и проходят в рамках онлайн‑курсов. Их ведут преподаватели‑практики, поэтому это не формат «послушать общую теорию», а возможность посмотреть на реальные подходы, познакомиться с экспертами, протестировать формат обучения и задать вопросы по теме или курсу.

📌 Посмотрите каталог курсов по тестированию: там уже не отдельные инструменты, а полноценные треки с практикой, архитектурой и реальными кейсами.

[Перейти в каталог]

Теги:
+3
Комментарии1

Ручное vs автоматизированное тестирование: где заканчивается автоматизация и начинается здравый смысл

Спор между сторонниками ручного тестирования и автоматизации идёт давно — и обычно заходит в тупик. Потому что вопрос «что лучше» изначально поставлен неправильно.

В третьем выпуске «Не воспроизводится» ведущие подкаста Оля Шнайдер и Серёжа Атрощенков отошли от вкусовщины и попробовали разобраться по существу. Когда автотест — это инвестиция, а когда попытка автоматизировать бессмысленность? В каких сценариях ручное тестирование быстрее и точнее? И правда ли, что, уйдя с головой в автотесты, можно потерять связь с реальным пользователем?

Обсудить это пришли Игорь Стародубцев, тестлид в Авито Товарах, и Глеб Дмитриев, старший QA в Распродажах — люди, которые каждый день принимают именно эти решения.


🎧 Слушайте выпуск подкаста на всех подкаст-платформах:

Обсуждение тем, тренды в QA и, конечно, мемы — в Telegram-канале «Не воспроизводится».

Добро пожаловать в мир тестирования. Баги прилагаются.

Ещё больше экспертизы собрали для вас на сайте: смотрите наши лонгриды, новости, и видео. А узнать, как стать частью команды AvitoTech, можно вот здесь.

Теги:
+26
Комментарии0

Терабайты данных из Teradata в Trino — эффективный способ передачи

В Data Ocean Nova был добавлен новый Trino Teradata Connector, который упрощает ad hoc-доступ к данным из Teradata и позволяет выгружать терабайты данных без кратного роста нагрузки на источник. Коллеги в новой статье объясняют, почему привычная параллельная выгрузка через несколько запросов плохо масштабируется, и показывают более правильный подход: распределять чтение по AMP’ам Teradata так, чтобы каждый из них читался только один раз.

Авторы разбирают архитектуру Teradata, типичные ошибки при многопоточном извлечении данных и принцип работы федеративного доступа через Trino. Отдельно показывают, как коннектор в Data Ocean Nova помогает организовать эффективную многопоточную передачу данных и использовать push-down для фильтрации, агрегаций и join’ов, когда это действительно уменьшает объем выборки.

Как всегда, в статье много полезных советов. Читайте и комментируйте!

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Spark SQL Scripting. Новые возможности для инженеров данных

Коллеги в новой статье «Spark SQL Scripting» представили добротный туториал с практическим разбором возможностей Spark SQL Scripting для инженеров данных.

Spark SQL Scripting, появившийся в 4-й версии, представляет собой процедурное расширение классического Spark SQL. Теперь разработчики могут писать полноценные многошаговые сценарии непосредственно на уровне SQL-артефактов, внедряя в них управляющую логику.

Spark SQL Scripting – это не просто синтаксический сахар, а эволюционный шаг в сторону сближения классического функционала аналитических СУБД (таких как Oracle PL/SQL, MS SQL Server T-SQL) с мощью распределенных вычислений Apache Spark. Использование Scripting позволяет инженерам данных собирать пайплайны обработки на «чистом SQL», не прибегая к сторонним компонентам и языкам разработки, тем самым сокращая кодовую базу и снижая барьер входа для дата-аналитиков.

Как это работает в типовых сценариях применения (пакетные DDL/DML-последовательности обработки, подготовка и расчет витрин данных, проверки качества данных, Runbook-операции), читайте по ссылке. Бонус для дочитавших статью до конца – свод практических рекомендаций и архитектурных паттернов при работе со Spark SQL Scripting.

Теги:
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Ближайшие события

ИИ пришёл в QA. Что с этим делать?

У ИИ в тестировании есть две крайности: одни говорят, что он уже всё автоматизирует, другие — что это хайп и ничего толком не работает. Истина, как обычно, где-то посередине — и во втором выпуске «Не воспроизводится» мы попробовали её найти.

В этот раз в гости к Оле Шнайдер и Сергею Атрошенкову пришел Андрей Бровко, тестлид Авито Авто, AI-евангелист в тестировании и лидер AI Agent Dev Community. Андрей работает с этой темой изнутри, поэтому разговор получился конкретным: где ИИ уже реально помогает, где пока добавляет больше головной боли, чем пользы, какие риски стоит держать в голове — и что в работе QA-инженера искусственному интеллекту пока не под силу.

🎧 Слушайте выпуск подкаста на всех подкаст-платформах:

💬 Обсуждение тем, тренды в QA и, конечно, мемы — в Telegram-канале «Не воспроизводится».

Добро пожаловать в мир тестирования. Баги прилагаются.

Ещё больше экспертизы собрали для вас на сайте: смотрите наши лонгриды, новости, и видео. А узнать, как стать частью команды AvitoTech, можно вот здесь.

Теги:
Всего голосов 25: ↑23 и ↓2+23
Комментарии1

Тестировщики из Авито запустили подкаст — и у них есть что сказать

«Не воспроизводится» ведут Оля Шнайдер и Сережа Атрощенков — практикующие QA-инженеры, которые каждый день работают с тем, о чём собираются говорить. В выпусках они разбирают реальные темы мира тестирования: ручное и автоматизированное тестирование, работа с ИИ, карьерный рост, отношения с командой, work-life balance — и всё, что обычно остаётся за закрытыми дверями ретро.

Идея простая: дать инженерам место, где можно честно обсудить профессию. Чтобы каждый знал, что он не один.

🎧 Слушайте выпуски подкаста на всех подкаст-платформах:

💬 Обсуждение тем, тренды в QA и, конечно, мемы — в Telegram-канале «Не воспроизводится».

Добро пожаловать в мир тестирования. Баги прилагаются.

Ещё больше экспертизы собрали для вас на сайте: смотрите наши лонгриды, новости, и видео. А узнать, как стать частью команды AvitoTech, можно вот здесь.

Теги:
Всего голосов 26: ↑26 и ↓0+26
Комментарии1

Представлен ресурс для тестировщиков с различными сервисами для автоматизации в одном месте: конверторы, json валидаторы, генераторы uuid и ещё десятки приятных мелочей.

Теги:
Всего голосов 3: ↑2 и ↓1+1
Комментарии0

7 открытых уроков для тестировщиков: автоматизируем тесты с умом

Теги:
Всего голосов 3: ↑2 и ↓1+3
Комментарии0

Онлайн инструменты для тестировщиков без регистрации и смс

Каждый тестировщик (как мне кажется) каждый день в своей работе использует генераторы uuid, конвертеры, регулярные выражения и json валидаторы. И если у нас нет самописных скриптов, то где то в закладках есть любимый инструмент (обычно разный для каждого из этих действий)

Я решил собрать все в одном месте. Ничего революционного, просто удобно, когда не нужно прыгать по вкладкам. Есть и валидация JSON по схеме, и разбор JWT, и ещё куча мелочей, которые в работе всплывают постоянно.

Ссылка на ресурс: tools.save-link.ru

P. S. может работать как pwa расширение и даже в оффлайне

Теги:
Всего голосов 3: ↑3 и ↓0+5
Комментарии2

QA, выбирай сторону

Мы возвращаемся с новым форматом QAчественного общения — антимитапом для тестировщиков.

Когда: 27 марта
Где: Санкт-Петербург, offline only

В этот раз сделали два зала и два настроения:

🔥 Test core
Пространство вызовов, острых тем и адреналина. Сарказм приветствуется, личные нападки — запрещены.

Будут холивары: «Hard Skills для QA — это про инструменты или про понимание систем?», «Как меняется профессия QA с приходом AI».

💆‍♀️ Debug
Зал для размышлений и рефлексии. Здесь не доказывают, а задаются вопросами и делятся гипотезами. Тот самый safe space, чтобы подумать о будущем QA.

Будут дискуссии: «Как принять свою роль и стать хорошим тестировщиком», «ИПР: развитие специалиста — это задача компании или специалиста?».

Вы сами выбираете маршрут. Можно передвигаться между залами и собирать инсайты с двух полюсов или остаться в одном пространстве и погрузиться в его формат.

🔗 Зарегистрироваться на митап

Теги:
Рейтинг0
Комментарии0

Playwright в 2026: новый стандарт UI‑автоматизации

На протяжении последних нескольких лет Playwright из альтернативного инструмента превратился в де‑факто стандарт для UI‑автоматизации в современных веб‑приложениях.

Основная причина тому — архитектурный сдвиг. В отличие от Selenium, который опирается на WebDriver и добавочный слой взаимодействия с браузером, Playwright работает напрямую через DevTools‑протокол. Это устраняет лишние абстракции и снижает накладные расходы на взаимодействие.

На практике это дает три ключевых эффекта:

Стабильность

Встроенный механизм auto‑waiting и синхронизации с состоянием DOM значительно снижает количество flaky‑тестов. Инженеру больше не нужно вручную управлять ожиданиями и обрабатывать race conditions.

Производительность

Благодаря прямому взаимодействию с браузером и встроенной поддержке параллельного выполнения, Playwright демонстрирует более быстрый feedback loop в CI/CD пайплайнах.

Developer Experience

Инструмент предоставляет полноценный набор средств чуть ли не из коробки: trace viewer, codegen, network interception, изоляция через browser contexts. Это снижает порог входа и ускоряет разработку тестов.

При этом важно понимать: Playwright не является «серебряной пулей». Он не делает плохую архитектуру тестов хорошей, не отменяет необходимость в грамотной декомпозиции сценариев, и не заменяет стратегию тестирования.

Но в условиях 2026 года, где доминируют SPA, асинхронные интерфейсы и требования к скорости CI, Playwright лучше соответствует реальным условиям эксплуатации.

Вывод: если вы проектируете систему автоматизации с нуля — Playwright является рациональным выбором по умолчанию.

Если у вас уже есть зрелая Selenium‑инфраструктура решение о миграции должно приниматься на основе метрик (flaky rate, время выполнения, стоимость поддержки), а не трендов.

Теги:
Рейтинг0
Комментарии2