Фабрики в тестировании (Python, Django, pytest, factory_boy)

Здесь мы рассматриваем фабрики в тестировании. На очень элементарных примерах, с использованием языка python и инструментов Django, pytest, factory_boy.

Здесь мы рассматриваем фабрики в тестировании. На очень элементарных примерах, с использованием языка python и инструментов Django, pytest, factory_boy.

JMX-файл на 50 000 строк, merge-конфликты при каждом коммите и PR-ревью, которое никто не читает - знакомо? Я столкнулся с этим на реальном проекте и нашёл способ декомпозировать JMeter-тесты так, чтобы основной файл похудел в 10 раз, а работать с тестами стало можно прямо из IDE.

Если вы уже имели опыт написания Ul-тестов для проверки страниц и форм, то, вероятно, задумывались: "Почему бы не протестировать весь сценарий целиком?" Так родилась идея делиться опытом, как мы внедрили подобный подход: начиная с первых шагов, объясняя, почему объединили UI, АРІ и SSH в единый интеграционный контур, и какие инструменты используем.

В первой части был заложен фундамент: локаторы, «умные» ассерты и хелсчеки. Это критически важные вещи, но на масштабе в 100+ тестов неизбежно возникает «второй слой» проблем — сложность диагностики и изоляция данных.

Твой тимлид открывает Jira и смотрит на статистику: за две недели ты завел три дефекта. Три. Он спрашивает, чем ты занимался все это время. Ты начинаете объяснять про двадцать багов, исправленных через личку с разработчиками. Он кивает и говорит: «Понятно. Но в системе этого нет».
Через неделю тебя включают в список на сокращение. Это не страшилка. Это реальность для тестировщиков, которые считают, что быстрая личка эффективнее формального баг-трекера. В этой статье я расскажу, с какими рисками сталкиваются тестировщики ЛАНИТ и других ИТ-компаний, когда заменяют баг-трекер личными переписками, и как это защитит твою карьеру.

Меня зовут Диана, я работаю тестировщиком больше полутора лет. Когда я только приходила в профессию, мои представления складывались из статей, курсов и разговоров с друзьями из ИТ. Казалось, что работа у тестировщика довольно простая: технических знаний нужно немного, а зона ответственности ограничена.
Практика быстро показала, что это не так. В статье я собрала мифы о тестировании, в которые я сама верила, и то, как все оказалось на самом деле.

Привет! Меня зовут Николай, я SDET в SimbirSoft. Это продолжение серии материалов о современных подходах к разработке и тестированию, и в этот раз мы поговорим о том, как искусственный интеллект меняет повседневную работу инженера.
В статье разберём, как ИИ-инструменты помогают ускорять разработку, автоматизировать рутину и повышать качество продукта. Посмотрим, где они действительно экономят время — генерация кода, тестов, анализ ошибок, — а где требуют осторожности и критического мышления.
Отдельное внимание уделим практическим сценариям: как использовать ИИ в тестировании, как выстраивать покрытие, ускорять отладку и улучшать тестовую архитектуру. Также обсудим, как безопасно внедрять такие инструменты в команду и не «перегрузить» процессы.
Материал будет полезен разработчикам и тестировщикам, которые хотят встроить ИИ в рабочий процесс и при этом сохранить контроль над качеством и архитектурой решений.
Для комфортного чтения достаточно базового понимания процессов разработки и тестирования, а также опыта работы с современными инструментами. Статья ориентирована на специалистов уровня middle и выше, но может быть полезна всем, кто хочет разобраться, как использовать ИИ не как замену, а как усиление своей экспертизы.

Как убедиться, что в аппаратном дизайне нет багов? Результаты обычных тестов иногда сигнализируют только о том, что ошибки не нашлись, а не о том, что их нет вовсе. На помощь приходит формальная верификация — метод, который проверяет все состояния системы в поисках ошибки. Для промышленной верификации есть три решения: VC Formal от Synopsys, Cadence от JasperGold и коммерческая часть Yosys. Проприетарные инструменты проверены «в бою», но доступны далеко не всем.
Меня зовут Борис Новосёлов, я младший инженер по верификации в YADRO, и я изучил альтернативы с открытым исходным кодом: CIRCT, Slang, Synlig и другие. Вы узнаете, как работают эти инструменты и на что обратить внимание при выборе решения для своего проекта.

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

Открыл Postman, потыкал эндпоинты, всё ответило 200 — вряд-ли хорошее тестирование Разбираю что на самом деле нужно проверять в API, показываю примеры на Postman и Jest, и даю чеклист который можно взять и использовать прямо сейчас.

Привет, Хабр!
Я Анна Круглова, в Диасофт занимаюсь развитием инструментов автоматизации тестирования на базе искусственного интеллекта.
В нашей компании процесс создания тестов для API и событий полностью автоматизирован с помощью ИИ. В этой статье расскажу, как это устроено и влияет на подход к работе тестировщика.

Ваши тесты стабильно проходят локально, но в CI каждое утро — красный океан? Вы тратите часы на дебаг флаков, а стейджинг «ложится» в самый неподходящий момент? Знакомо? В этом гайде расскажу, как перестать жечь бюджет CI и превратить автотесты из источника боли в живую документацию, следуя методологии BDR (Behavior-Driven Living Requirements).
Почему это важно:
Если у вас уже 100+ тестов или вы только закладываете фундамент — неправильная архитектура будет стоить команде десятков часов дебага и простоя CI. Но есть проверенные практики, которые внедряются за пару часов и экономят деньги каждый день.
Вы узнаете:
Как использовать Dependency Projects вместо globalSetup, чтобы строить граф иммунитета и экономить 40 минут CI при падении окружения.
Почему авторизация через API — это база, а UI-логин должен быть только в одном тесте.
Как выбирать локаторы, чтобы не переписывать тесты после каждого апдейта фронтенда: getByTestId для действий, getByRole для проверок.
Почему isVisible() — зло, и как web-first assertions (с ретраями) убивают race conditions.
В чём ловушка гидратации и почему force: true — это маскировка проблемы, а не решение.
Как блокировать маркетинговый мусор (метрики, чаты), чтобы тесты не зависели от сторонних тормозов.
Как Trace Viewer превращает дебаг из гадания в машину времени: смотрим не просто скриншоты, а консоль, сеть и интерактивный DOM в момент падения.
Прагматичный подход к линтерам: что включать как error, а что — как warn, чтобы не перегнуть палку.
Для кого:
Для QA-инженеров, которые хотят поднять свои тесты на промышленный уровень. Для тимлидов, которые устали от горящего CI и хотят стандартизировать подход в команде. Для всех, кто использует Playwright и хочет спать спокойно.
Бонус:
Cheat sheet по web-first ассертам, шпаргалка частых флаков и готовые конфиги для playwright.config.ts и .eslintrc.js. А в конце — челлендж: примените 5 правил уже сегодня и оцените стабильность.
Часть 1 — фундамент стабильности. В следующей части разберём масштабирование: фикстуры, изоляцию данных, параллельный запуск и превращение тестов в живую документацию.
Подход и код — в открытом репозитории на GitHub. Поехали!
Почему требований нет (и это нормально).
Думаю, каждому читателю-тестировщику знакома картина, когда ты приходишь на работу, завариваешь кофе, садишься за Jira, а там на тест упала задача, в которой из контекста только название. Причем что-то вроде «Улучшить авторизацию».
Требования очень редко полностью попадают под характеристики...

Привет! Я Александра Невзорова, QA в команде оформлений. Моя команда занимается процессингом оформления кандидатов во всю группу компаний. Поделюсь докладом моей коллеги — Марии Палагиной из команды разработки веб-платформ об автоматических релизах.
Автоматические релизы — не просто модное словосочетание. Это мощный инструмент, который может кардинально изменить подход команды к выпуску новых версий продукта.
В статье разберемся, что такое автоматические релизы, какие подходы к ним существуют и как правильно внедрить их в процесс, чтобы получить максимум пользы и минимум стресса.

Привет, Хабр! На связи разработчик Куратов Кирилл из команды дирекции качества РТЛабс. Представлю вам нашу внутреннюю разработку — User Pool.
По названию понятно, что это пул пользователей, но глобально он представляет собой сервис для получения данных тестовых учётных записей. Наша команда использует User Pool во фреймворке для написания автотестов и в браузерном расширении для автоматической авторизации тестовых учётных записей в тестируемых сервисах. Например, в единой системе идентификации и аутентификации (ЕСИА), речь о которой пойдёт ниже. Также в конце будет небольшая история о том, как мы разрабатывали расширение для браузера и с какими трудностями столкнулись.

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

В 2019 году я получил диплом металлурга и был уверен, что впереди стабильная инженерная карьера. В феврале 2021-го сидел на первом собеседование в IT на позицию мануального тестировщика. В 2026 я работаю Fullstack QA Engineer в Альфа-Банке: тестирую аналитическую HTAP-систему, пишу автотесты на Java, разбираю Kafka-потоки и трассирую запросы через микросервисную архитектуру.
Путь был непростым и тернистым. Но если бы в 2026 я пытался перейти из инженера в QA, то сразу бы перескочил ручное тестирование. Привет, меня зовут Королев Павел, я ведущий специалист по тестированию в Альфа-Банке. Расскажу историю перехода в QA из других профессий и что бы я делал сейчас, если бы думал о переходе в QA сегодня.

Современный бизнес переживает очередную трансформацию под влиянием информационных технологий. Он движется от стадии слепого принятия концепций больших данных (Big data) и искусственного интеллекта к более осознанной работе с информацией. На этом фоне появляются новые профессии, такие как инженер по обеспечению качества данных — data quality assurance engineer, или просто инженер DQ, как часто указывают в вакансиях. Почему эта профессия на пике востребованности, где она нужна и кому легче освоить её прямо сейчас? На эти и другие вопросы отвечают эксперты российской ИТ-компании «Криптонит»: руководитель департамента тестирования Александр Гречин и ведущий инженер по тестированию качества данных Вероника Казакова.
Как и в любой профессиональной среде, у специалистов по работе с данными есть своя терминология. Мы подготовили краткий глоссарий, чтобы говорить с вами на одном языке:
Метаданные, или «данные о данных» — это их происхождение (источник), формат, время создания, правила обработки и контроля качества. Например, к нам загружаются таблицы с данными о компании (ИНН, названием компании, коды ОКВЭД и так далее). Здесь метаданные — это атрибуты таблицы (какие колонки мы загружаем, какой в них тип данных, обязательно ли их заполнение, какие правила мы накладываем на значения.
Пайплайны (data pipelines): автоматизированные последовательности получения, преобразования и перемещения данных из источников в хранилища. Пайплайны работают как конвейеры, подготавливающие сырые данные для их дальнейшего анализа.

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

Прокси — один из основных инструментов в арсенале QA-инженера. Charles Proxy, Fiddler и Proxyman давно стали стандартом для анализа и изменения сетевого трафика в процессе ручного тестирования. Их принцип работы хорошо известен и подробно описан во множестве материалов.
Однако возникает вопрос: как использовать подобные возможности в UI-автотестах? Как перехватывать или мокать трафик в автоматизированных сценариях?