Профиль навыка

TDD и BDD

Test-Driven Development, Behavior-Driven Development, Gherkin, Cucumber, red-green-refactor

Тестирование и QA Стратегия тестирования

Ролей

18

где встречается этот навык

Грейдов

5

сформированная дорожка роста

Обязательных требований

39

ещё 51 — необязательные

Домен

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

Группа

Стратегия тестирования

Последнее обновление

17.03.2026

Как использовать

Выберите текущий грейд и сравните ожидания. Карточки ниже покажут, что нужно закрыть для следующего уровня.

Чего ждут на каждом уровне

Таблица показывает, как меняется глубина владения навыком от Junior до Principal.

Роль Обязательность Описание
Backend Developer (C#/.NET) Понимает основы TDD в .NET: цикл red-green-refactor с xUnit/NUnit, базовая структура тестов (Arrange-Act-Assert) и конвенции именования тестов. Пишет простые юнит-тесты для методов C#. Следует командным BDD-практикам с использованием SpecFlow для приёмочных тестов.
Backend Developer (Elixir) Практикует TDD в Elixir: red-green-refactor с ExUnit, doctests для документации. Пишет тесты перед реализацией для простых функций.
Backend Developer (Go) Понимает основы TDD в Go: table-driven тесты, конвенции пакета testing и организация тестовых файлов. Пишет базовые тесты с testing.T и понимает отчётность покрытия тестами. Следует командным практикам BDD-стиля тестов с использованием Ginkgo/Gomega или testify.
Backend Developer (Java/Kotlin) Понимает основы TDD в Java: цикл red-green-refactor с JUnit 5, базовые ассерты и аннотации жизненного цикла тестов. Пишет простые юнит-тесты для Java-классов. Следует командным BDD-практикам с использованием Cucumber для приёмочных тестов с синтаксисом Gherkin.
Backend Developer (Node.js) Понимает основы TDD в Node.js: цикл red-green-refactor с Jest/Vitest, блоки describe/it и матчеры ассертов. Пишет базовые юнит-тесты для JavaScript/TypeScript функций. Следует командным BDD-практикам написания feature-спецификаций с Cucumber.js.
Backend Developer (PHP) Понимает принцип red-green-refactor. Пишет тесты перед кодом для простых функций. Знаком с BDD-подходом: описание поведения через Given-When-Then. Следует testing guidelines команды.
Backend Developer (Python) Понимает концепцию TDD (red-green-refactor). Пишет тесты перед кодом для простых функций. Знает о BDD и формате Given-When-Then. Использует описательные имена тестов.
Backend Developer (Rust) Практикует TDD в Rust: red-green-refactor с cargo test, doc tests. Пишет тесты перед реализацией для простых функций.
Backend Developer (Scala) Практикует TDD в Scala: red-green-refactor с ScalaTest/MUnit, property-based testing через ScalaCheck. Пишет тесты перед реализацией.
Compiler Engineer Знает базовые концепции tdd bdd для compiler engineer и умеет применять их в типовых задачах. Использует стандартные инструменты и следует установленным практикам команды. Понимает когда и почему применяется данный подход.
Embedded Developer Понимает принципы TDD для embedded: red-green-refactor, тест-first для firmware-модулей. Пишет тесты перед реализацией простых функций.
Fullstack Developer Практикует TDD для fullstack: Jest для frontend, pytest/jest для backend. Пишет тесты перед реализацией.
Game QA Engineer Понимает основы TDD/BDD для тестирования игр: написание тестовых сценариев в формате Given/When/Then, базовые концепции юнит-тестов для игровой логики и test-first подход для детерминированных игровых систем. Следует командным гайдлайнам по BDD-сценариям в тестировании геймплейных фич.
Language Tooling Engineer Понимает основы TDD для языковых инструментов: test-first разработка для правил парсера, тест-кейсы грамматик и верификация трансформаций AST. Пишет базовые тесты для выходов лексера/парсера. Следует командным BDD-практикам для тестирования спецификаций языковых фич.
QA Automation Engineer Обязателен Понимает основы TDD/BDD: цикл red-green-refactor, формат сценариев Given/When/Then и концепция тестовой пирамиды. Пишет базовые BDD-сценарии в синтаксисе Gherkin. Реализует step definitions, связывающие BDD-сценарии с кодом автоматизации. Следует командным стандартам и конвенциям тестирования.
QA Engineer (Manual) Обязателен Понимает основы BDD: структура сценариев Given/When/Then, behavior-driven дизайн тест-кейсов и коллаборация между QA и разработчиками по тестовым спецификациям. Пишет ясные BDD-сценарии в Gherkin, служащие одновременно документацией и тест-кейсами. Следует командным конвенциям организации сценариев.
QA Security Engineer Обязателен Понимает основы TDD/BDD применительно к тестированию безопасности: написание сценариев тестирования безопасности в BDD-формате, test-first подход для валидаций безопасности и критерии приёмки безопасности в Gherkin. Следует командным практикам автоматизированных спецификаций тестов безопасности.
Smart Contract Developer Понимает основы TDD для смарт-контрактов: test-first разработка с Hardhat/Foundry, базовые паттерны ассертов для верификации состояния контрактов и тестирование газа. Пишет простые тесты для функций контрактов. Следует командным BDD-практикам описания спецификаций поведения контрактов.
Роль Обязательность Описание
Backend Developer (C#/.NET) Практикует TDD в .NET: red-green-refactor, test-first для domain logic. Пишет BDD через SpecFlow/Reqnroll: Given-When-Then. Использует Moq/NSubstitute для изоляции.
Backend Developer (Elixir) Применяет TDD/BDD для Elixir-разработки: property-based testing через StreamData, ExUnit описательные тесты, Wallaby для BDD acceptance tests.
Backend Developer (Go) Практикует TDD в Go-проектах: пишет table-driven тесты перед реализацией через go test, использует testify для assert/require. Применяет BDD-подход с goconvey или ginkgo/gomega для описания поведения API-эндпоинтов, поддерживает тестовое покрытие выше 70%.
Backend Developer (Java/Kotlin) Практикует TDD в Java: red-green-refactor цикл, test-first для бизнес-логики. Пишет BDD-сценарии через Cucumber: Given-When-Then для acceptance criteria. Использует Mockito для изоляции зависимостей.
Backend Developer (Node.js) Применяет TDD для Node.js: red-green-refactor cycle для business logic, Jest test-first. Пишет BDD-сценарии через Cucumber.js для acceptance tests.
Backend Developer (PHP) Практикует TDD для бизнес-логики: domain services, value objects, use cases. Пишет BDD-сценарии для acceptance тестов. Применяет TDD при рефакторинге legacy-кода. Обучает junior-ов подходу.
Backend Developer (Python) Практикует TDD для бизнес-логики. Использует BDD с behave или pytest-bdd. Пишет acceptance criteria в Gherkin. Применяет TDD при рефакторинге.
Backend Developer (Rust) Применяет TDD для Rust: property-based testing через proptest, test-driven trait design, integration test modules. Использует test fixtures.
Backend Developer (Scala) Применяет TDD/BDD: ScalaTest FlatSpec/WordSpec для BDD-style, property-based testing для domain logic, test-driven Akka actor design.
Compiler Engineer Уверенно применяет tdd bdd для compiler engineer при решении нестандартных задач. Самостоятельно выбирает оптимальный подход и инструменты. Анализирует trade-offs и предлагает улучшения существующих решений.
Embedded Developer Применяет TDD для embedded-модулей: test-driven protocol parsing, state machine development. Использует Ceedling для TDD workflow.
Fullstack Developer Применяет TDD/BDD: React Testing Library с TDD, backend test-driven design, Cypress BDD scenarios.
Game QA Engineer Применяет TDD/BDD для тестирования игровых фич: пишет комплексные BDD-сценарии для геймплейных механик, реализует автоматические тесты для баланса игры и систем прогрессии, использует property-based тестирование для рандомизированных игровых элементов. Интегрирует BDD-сценарии с игровыми CI-пайплайнами. Покрывает edge cases в мультиплеерных взаимодействиях и переходах состояний.
Language Tooling Engineer Применяет TDD для разработки языковых инструментов: test-driven реализация правил парсера, комплексные тестовые наборы грамматик с edge cases и BDD-сценарии для спецификаций языковых фич. Использует snapshot-тестирование для выходов AST/IR. Реализует тестовые фикстуры для сложных языковых конструкций. Интегрирует тесты конформности языка в CI.
QA Automation Engineer Обязателен Самостоятельно применяет TDD/BDD в проектах автоматизации: проектирует библиотеки BDD-сценариев с переиспользуемыми step definitions, реализует data-driven BDD-сценарии для комплексного покрытия и применяет техники тест-дизайна (эквивалентное разбиение, граничные значения) в рамках BDD-фреймворка. Интегрирует отчёты BDD-тестов в дашборды CI/CD.
QA Engineer (Manual) Обязателен Самостоятельно пишет комплексные BDD-сценарии: сложные многошаговые воркфлоу с scenario outlines, data-driven сценарии для параметризированного тестирования и background-секции для общих предусловий. Сотрудничает с разработчиками для выравнивания BDD-сценариев с реализацией. Ревьюит BDD-сценарии членов команды на ясность и полноту.
QA Security Engineer Обязателен Применяет BDD для security requirements: Gherkin-сценарии для authentication, authorization rules, compliance requirements. TDD для security utility functions.
Smart Contract Developer Применяет TDD для разработки смарт-контрактов: test-driven реализация функций контрактов с комплексной верификацией состояния, fuzz-тестирование для edge cases и BDD-сценарии для сложных DeFi-воркфлоу. Реализует fork-тестирование против состояния mainnet. Использует инструменты покрытия для обеспечения полного покрытия веток логики контрактов.
Роль Обязательность Описание
Backend Developer (C#/.NET) Обязателен Внедряет TDD/BDD-культуру: outside-in TDD для domain layer, SpecFlow + ASP.NET TestServer для integration. Проектирует testable architecture через DI.
Backend Developer (Elixir) Проектирует TDD/BDD подход для Elixir-систем: test-driven OTP design, property-based testing для GenServers, contract-driven development между сервисами.
Backend Developer (Go) Обязателен Внедряет TDD-культуру в Go-разработку: проектирует тестируемую архитектуру с dependency injection, использует interfaces для мокирования через mockgen/mockery. Разрабатывает acceptance-тесты через httptest и testcontainers-go, настраивает coverage-отчёты в CI.
Backend Developer (Java/Kotlin) Обязателен Внедряет TDD/BDD-культуру в Java-проекте: outside-in TDD для domain layer, Cucumber + Spring для integration scenarios. Проектирует testable architecture: порты и адаптеры, dependency injection. Менторит по testing practices.
Backend Developer (Node.js) Обязателен Проектирует TDD/BDD workflow: test-first для domain logic, outside-in TDD для API endpoints, BDD для user-facing features. Обучает команду TDD-практикам.
Backend Developer (PHP) Обязателен Определяет тестовую стратегию: testing pyramid, когда TDD обязателен vs когда избыточен. Проектирует BDD-фреймворк для команды. Интегрирует acceptance tests в CI с изолированной средой.
Backend Developer (Python) Проектирует testable архитектуру. Применяет TDD для API design. Использует BDD для collaboration с product. Обучает команду TDD.
Backend Developer (Rust) Проектирует TDD подход: type-driven TDD (compiler-guided development), property-based testing стратегию, contract-driven interop.
Backend Developer (Scala) Проектирует TDD/BDD подход: type-driven TDD, property-based testing стратегию, contract-driven development между сервисами.
Compiler Engineer Экспертно применяет tdd bdd для compiler engineer для проектирования сложных систем. Оптимизирует существующие решения и предотвращает архитектурные ошибки. Проводит code review и обучает коллег лучшим практикам.
Embedded Developer Внедряет TDD для firmware: dual-target development (host + MCU), test-driven HAL design, BDD для acceptance criteria устройств.
Fullstack Developer Проектирует TDD/BDD подход: end-to-end TDD workflow, BDD для feature specs, contract-driven development.
Game QA Engineer Обязателен Проектирует стратегию тестирования для игровых проектов с TDD/BDD: автоматизированные тестовые пирамиды для игровых систем, BDD-driven приёмочное тестирование для игровых фич и property-based тестирование для процедурного контента. Реализует тестовую инфраструктуру для мультиплеерной симуляции и нагрузочного тестирования. Оптимизирует выполнение тестов для быстрой обратной связи в игровом CI. Менторит команду по практикам test-driven разработки игр.
Language Tooling Engineer Обязателен Проектирует архитектуру тестирования для платформы языкового тулинга: наборы тестов конформности для спецификации языка, fuzz-тестирование для робастности парсера и BDD-driven приёмка фич. Реализует golden file тестирование для генерации и форматирования кода. Создаёт тестовую инфраструктуру для кросс-платформенной валидации языковых инструментов. Менторит команду по test-driven разработке компиляторов/LSP.
QA Automation Engineer Обязателен Проектирует стратегию TDD/BDD тестирования для продукта: выбор и конфигурация BDD-фреймворков, living documentation из BDD-сценариев и внедрение культуры shift-left тестирования. Создаёт переиспользуемые библиотеки BDD-шагов и доменно-специфичные DSL тестирования. Оптимизирует баланс тестовой пирамиды между юнит, интеграционными и приёмочными тестами. Менторит команду по продвинутым BDD-паттернам и архитектуре тестов.
QA Engineer (Manual) Обязателен Проектирует BDD-стратегию для обеспечения качества продукта: системы living documentation из BDD-сценариев, behavior-driven спецификация требований и фасилитация сессий three amigos. Создаёт стилевые руководства BDD и процессы ревью. Реализует трассировку между BDD-сценариями, требованиями и дефектами. Менторит команду по эффективному написанию BDD-сценариев и доменному моделированию.
QA Security Engineer Обязателен Проектирует BDD-подход для security: security acceptance criteria templates, automated compliance scenarios, integration с threat models. Реализует security behavior specifications.
Smart Contract Developer Обязателен Проектирует архитектуру тестирования для платформ смарт-контрактов: интеграция формальной верификации с TDD-воркфлоу, тестирование инвариантов для свойств безопасности протокола и BDD-driven подготовка аудита безопасности. Реализует мутационное тестирование для оценки качества тестового набора контрактов. Создаёт фреймворки тестирования для кросс-чейн взаимодействий контрактов. Менторит команду по test-driven безопасности смарт-контрактов.
Роль Обязательность Описание
Backend Developer (C#/.NET) Обязателен Определяет testing-стратегию: test pyramid, coverage targets, BDD для acceptance criteria. Внедряет quality gates. Балансирует скорость и coverage.
Backend Developer (Elixir) Внедряет TDD/BDD культуру в Elixir-команде: mandatory test-first для критических paths, BDD для feature specs, quality metrics. Обучает команду.
Backend Developer (Go) Обязателен Определяет TDD/BDD-стандарты для Go-команды: обязательные table-driven тесты, минимальное покрытие для merge, шаблоны тестовых сценариев. Внедряет автоматический мониторинг coverage regression, обучает команду практикам test-first разработки и property-based testing.
Backend Developer (Java/Kotlin) Обязателен Определяет testing-стратегию команды: test pyramid (unit → integration → e2e), coverage targets, BDD для acceptance criteria. Внедряет automated quality gates. Балансирует скорость разработки и coverage.
Backend Developer (Node.js) Обязателен Определяет testing-стратегию: когда TDD обязателен (domain logic), BDD для acceptance. Внедряет testing culture. Балансирует coverage и delivery speed.
Backend Developer (PHP) Обязателен Формирует культуру тестирования в команде: code review с фокусом на тесты, coverage goals, TDD workshops. Балансирует скорость разработки и покрытие тестами.
Backend Developer (Python) Внедряет TDD/BDD культуру в организации. Создаёт guidelines. Оценивает ROI от TDD. Интегрирует BDD в product development process.
Backend Developer (Rust) Внедряет TDD культуру: mandatory test-first для critical paths, quality metrics, testing best practices. Обучает команду.
Backend Developer (Scala) Внедряет TDD/BDD культуру: mandatory test-first для критических paths, testing metrics, quality standards. Обучает команду.
Compiler Engineer Устанавливает стандарты применения tdd bdd для compiler engineer в команде и принимает архитектурные решения. Определяет технический roadmap с учётом данного навыка. Менторит senior инженеров и влияет на практики смежных команд.
Embedded Developer Определяет TDD/BDD стратегию для embedded-команды. Формирует dual-target workflow, BDD acceptance criteria templates.
Fullstack Developer Внедряет TDD/BDD культуру: mandatory test-first для critical paths, quality metrics, best practices.
Game QA Engineer Обязателен Определяет testing strategy на уровне продукта. Формирует стандарты quality assurance. Внедряет shift-left testing culture.
Language Tooling Engineer Обязателен Определяет стратегию тестирования для платформы языкового тулинга: стандарты тестирования конформности, требования тестирования регрессий производительности и процессы кросс-платформенной валидации. Устанавливает BDD-практики для спецификации и приёмки языковых фич. Продвигает внедрение культуры test-driven разработки в командах языкового тулинга.
QA Automation Engineer Обязателен Определяет стратегию тестирования на уровне продукта: стандарты BDD/TDD, метрики обеспечения качества и культуру shift-left тестирования между командами. Устанавливает библиотеки BDD-сценариев как living documentation поведения продукта. Продвигает внедрение behavior-driven development как инструмента коллаборации между бизнесом, QA и разработкой. Создаёт практики COE (center of excellence) тестирования.
QA Engineer (Manual) Обязателен Определяет testing strategy на уровне продукта. Формирует стандарты quality assurance. Внедряет shift-left testing culture.
QA Security Engineer Обязателен Определяет BDD-стандарты для security: scenario templates для OWASP categories, review process, documentation-as-tests. Внедряет security story mapping.
Smart Contract Developer Обязателен Определяет testing strategy на уровне продукта. Формирует стандарты quality assurance. Внедряет shift-left testing culture.
Роль Обязательность Описание
Backend Developer (C#/.NET) Обязателен Формирует testing-культуру организации: TDD/BDD стандарты, testing frameworks, shared infrastructure. Определяет quality metrics.
Backend Developer (Elixir) Формирует testing culture стратегию: TDD adoption path, property-based testing strategy, test-driven architecture для Elixir-платформы.
Backend Developer (Go) Обязателен Формирует организационную культуру тестирования в Go: стандарты TDD для всех команд, метрики качества тестов (mutation testing через go-mutesting), политики coverage. Разрабатывает платформенные инструменты для автоматической генерации test scaffolding.
Backend Developer (Java/Kotlin) Обязателен Формирует testing-культуру организации: TDD/BDD стандарты, testing frameworks, shared test infrastructure. Определяет quality metrics и acceptance criteria для releases.
Backend Developer (Node.js) Обязателен Формирует testing-культуру организации: TDD adoption strategy, BDD для cross-team contracts, test-first approach для critical paths. Определяет testing maturity model.
Backend Developer (PHP) Обязателен Определяет стратегию quality engineering на уровне организации: testing standards, infrastructure for testing at scale, shift-left testing culture.
Backend Developer (Python) Определяет testing methodology для компании. Формирует engineering culture. Публикует опыт внедрения.
Backend Developer (Rust) Формирует testing culture: TDD adoption strategy, Rust-specific testing patterns, test-driven architecture governance.
Backend Developer (Scala) Формирует testing culture стратегию: TDD adoption, property-based testing governance, test-driven architecture для Scala-платформы.
Compiler Engineer Формирует стратегию применения tdd bdd для compiler engineer на уровне организации. Определяет best practices и влияет на выбор технологий за пределами своей команды. Является признанным экспертом в данной области.
Embedded Developer Определяет enterprise TDD/BDD подход для embedded. Формирует методологию для safety-critical firmware development.
Fullstack Developer Формирует testing culture: TDD adoption, BDD governance, test-driven fullstack architecture.
Game QA Engineer Обязателен Определяет QA-стратегию организации. Формирует quality engineering culture. Внедряет platform-решения для тестирования.
Language Tooling Engineer Обязателен Определяет организационную стратегию QA для экосистемы языкового тулинга: стандарты тестирования для проектов компилятора, LSP и IDE-тулинга. Продвигает внедрение формальной верификации и property-based тестирования для критической языковой инфраструктуры. Реализует платформенные решения тестирования, масштабируемые между продуктами языковых инструментов. Формирует индустриальные стандарты обеспечения качества языковых инструментов.
QA Automation Engineer Обязателен Определяет QA-стратегию организации. Формирует quality engineering culture. Внедряет platform-решения для тестирования.
QA Engineer (Manual) Обязателен Определяет организационную стратегию QA с BDD как ключевой практикой: культура quality engineering, behavior-driven управление требованиями и стандарты living documentation. Продвигает внедрение BDD в организации как инструмента выравнивания бизнеса и технологий. Реализует платформенные решения для управления BDD-сценариями и governance свидетельств тестирования. Формирует практики обеспечения качества в масштабе индустрии.
QA Security Engineer Обязателен Проектирует security-by-design methodology: threat-model-driven BDD, automated compliance verification, security requirement traceability. Определяет security testing culture.
Smart Contract Developer Обязателен Определяет QA-стратегию организации. Формирует quality engineering culture. Внедряет platform-решения для тестирования.

Сообщество

👁 Следить ✏️ Предложить изменение Войдите, чтобы предлагать изменения
📋 Предложения
Пока нет предложений для TDD и BDD
Загрузка комментариев...