Update QA-profile.md

This commit is contained in:
katemurao19
2023-04-05 16:18:29 +03:00
committed by GitHub
parent 8c07a73e4c
commit 91a9288857

View File

@@ -22,48 +22,60 @@
- Если менеджер считает, что специалисту в команде не нужен какой-то навык, то его можно не учитывать.
### Е1
- Тестирует отдельные задачи ad hoc, то есть без подготовки тестовой документации и без ожидаемого результата.
- Пишет чек-листы и тест-кейсы на позитивные и негативные сценарии.
- Перепроверяет закрытые баги и пишет понятные баг-репорты.
- Занимается ручным тестированием, составляет и тестирует по тест-кейсам или делает тестирование ad-hoc .
- Решает задачи с подробным описанием скоупа тестирования.
- Тестирует отдельные задачи.
- Пишет чеклисты и тест-кейсы на основные позитивные и негативные сценарии.
- Перепроверяет закрытые баги и пишет понятные и воспроизводимые багрепорты по ошибкам.
### Е2
- Составляет тестовые модели для части функциональности продукта.
- Может в любой момент рассказать о качестве фич, с которыми работает.
- Разрабатывает и поддерживает тест-кейсы и интеграционные и е2е-автотесты.
- Применяет основные техники тест-дизайна, например классы эквивалентности.
- Следит за полнотой покрытия тестами, например учитывает негативные сценарии, граничные значения, проверяет все возможные ветви бизнес-процессов.
- Разбирает отчёты автотестов, перепроверяет ошибки.
- Использует подход risk-based testing или другую методологию, чтобы оценить риски по задачам.
- При тестировании задач пишет тест-кейсы и автотесты на них.
- Может составить тест-кейсы для конкретных фичей, реализованных в задаче, с применением основных техник тест-дизайна: например, классы эквивалентности.
- Может всегда быстро предоставить актуальную и правдивую информацию о качестве разрабатываемых фичей - в задачах всегда понятно, что тестировалось руками и автоматически.
- Разбирает отчёты автотестов, перепроверяет ошибки.
- Разрабатывает новые автотесты е2е и/или интеграционного уровня, поддерживает их.
- Знает основные техники тест-дизайна и активно их использует, когда они применимы: оптимизирует проверки, обеспечивает полноту покрытия через техники тест-дизайна. Например покрывает негативные сценарии, граничные значения, проверяет все возможные ветви бизнес-процессов. Разрабатывает тест-кейсы и автотесты на основе техник тест-дизайна.
### Е3
- Владеет тестовой моделью всей функциональности продукта, следит, чтобы покрытие кода было полным.
- Тестирует продукт на разных уровнях, например UI и API.
- Разрабатывает, поддерживает и улучшает интеграционные, компонентные, е2е-автотесты.
- Применяет шаблон проектирования PageObjects.
- Следит, чтобы команда придерживалась пирамиды тестирования.
- Составляет тест-кейсы и обсуждает с разработчиками, как автоматизация распределена по пирамиде тестирования.
- Ведёт процессы SPT/ZBP в команде, обеспечивает SLO для решения проблем пользователей и багов.
- Вместе с владельцем продукта составляет критерии приёмки по процессу ATDD.
- Отслеживает достижение baseline по team maturity model в QA-секции.
- Обучает коллег по команде лучшим практикам тестирования.
- Обеспечивает качество на всех этапах реализации, следит за метриками после выкатки фичи, юзер-сторей или крупных фичей.
- Составляет тестовые модели для части функциональности команды.
- Самостоятельно решает задачи даже без описания подробного скоупа тестирования.
- Кроме новых автотестов е2е и тестов интеграционного уровня, может разрабатывать тесты компонентного уровня.
- Использует паттерн pageObjects. Разрабатывает недублирующие, оптимальные, стабильные тесты. Улучшает стабильность уже существующих автотестов.
- Составляет тест-кейсы и обсуждает с разработчиками, как будет распределяться автоматизация по пирамиде тестирования. Следит за тем, чтобы команда придерживалась пирамиды тестирования.
- Тестирует не только UI, но и уровни ниже: например, API.
- Владеет и ведёт процессы SPT/ZBP в своей команде, обеспечивает должное SLO по решению проблем пользователей и багов.
- Применяет и владеет процессом ATDD в команде, составляет критерии приёмки вместе с product owner.
- Драйвит достижение baseline по ТММ в QA-секции.
- Может добавить дополнительные Quality Gates в CI/CD команды.
- Использует подход Risk Based Testing в оценке и предотвращении рисков, либо использует другие методологии по работе с рисками, проводит оценку рисков у задач.
### Е4
- В любой момент может рассказать команде о качестве всех фич и продукта в целом.
- Фокусирует команду на улучшении качества продукта.
- Разрабатывает тесты на backend и client-side, чтобы обеспечивать покрытие на всех уровнях системы.
- Прорабатывает юнит-тесты вместе с разработчиками.
- Проверяет качество покрытия юнит-тестами через код-ревью или с помощью мутационного тестирования.
- Исследует проблемы flaky-тестов и самостоятельно устраняет причины.
- Меняет процессы, если видит баги от команды.
- Обеспечивает качество всего функционала команды целиком.
- На основе данных по покрытию тестовой модели и непосредственного тестирования, может предоставить полную информацию о проведённом тестировании, качестве и рисках для любого изменения, которое выкатывается в продакшен.
- Актуализирует и владеет тестовой моделью всего функционала разрабатываемого продукта или системы, обеспечивает необходимое и достаточное покрытие тестами всей тестовой модели.
- Координирует кросскомандное тестирование.
- Доносит до команды информацию о состоянии качества и фокусирует команду на его улучшении.
- Умеет разрабатывать тесты на backend и хотя бы на один client-side, чтобы обеспечивать покрытие на всех уровнях системы.
- Прорабатывает вместе с разработчиками юнит-тесты.
- Может проверить качество покрытия юнит-тестами, которые пишут разработчики, через код ревью или с помощью мутационного тестирования.
- Исследует проблемы flaky-тестов и самостоятельно устраняет причины, либо адресует руткозы флаки-тестов на ответственных и добивается их исправлений.
- Если видит проблемы в большом количестве багов от команды, то исследует первопричину и меняет процессы обеспечения качества.
- Является экспертом по QA внутри своей команды: обучает коллег тестировать через менторство, с объяснением теории и применением практики. Организует процессы тестирования, так, чтобы не являться боттл-неком для команды.
- Может настроить автоматическую сборку тестового контура для интеграционного тестирования фичей в юнита. Например, прогон специфичных тестов на релизах Инфомодели.
- Проводит исследовательское тестирование с целями, сессиями и итоговыми отчётами.
### Е5
- В любой момент может показать качество продукта с помощью объективных метрик.
- Оценивает риски в больших проектах. Объясняет, что, где и почему может пойти не так.
- Разрабатывает автотесты больше чем на трёх разных платформах.
- Может настроить тестовый контур для интеграционного тестирования фич в юните и добавить дополнительные Quality Gates в CI/CD команды.
- Улучшает инструменты тестирования в команде и экосистеме тестирования Авито.
- Проводит нефункциональные тесты, например performance и security, привлекает для этого экспертов.
- Для больших проектов проводит оценку рисков, аргументировано объясняет, где и что может пойти не так.
- Занимается улучшением общих инструментов тестирования, осуществляет вклад в общую экосистему тестирования компании: например, самостоятельно добавляет необходимый функционал в Resource Manager.
- Комплексно подходит к обеспечению качества. Проводит сам или привлекает экспертов для проведения нефункционального тестирования - performance-тесты и Security-тесты. Например, комплексно подходит к соблюдению NFR сервисами.
- Владеет метриками качества своей команды/юнита, всегда может показать на объективных метриках, какая ситуация сейчас с качеством.
- Участвует в разборах инцидентов, предотвращает повторные инциденты.
- Является экспертом по QA внутри своего юнита или нескольких команд - обучает коллег тестировать как положено, с теорией и практикой.
- Имеет карту/модель рисков по всему юниту, системно работает над предотвращением рисков в юните.
### Е6
- Создаёт новые инструменты для обеспечения качества. Например, фреймворк для интеграционного тестирования автозагрузки или скрипты сравнения диффов в системе управления метаданными Авито.
- Проводит исследования, чтобы оценить качество продукта в целом. Например, проверяет гипотезы качества на пользователях. Проводит сравнительное тестирование с продуктами конкурентов.
- Создаёт с нуля новые инструменты для обеспечения качества. Например, скрипты сравнения диффов инфомодели или фреймворк для интеграционного тестирования автозагрузки.
- Может провести исследование по оценке качества для пользователей и качества продукта в целом: тестирует гипотезы качества на пользователях, сравнивает свой продукт и конкурентов в плане качества. Например, проводит сравнительное тестирование продуктов, проводит оценку по аспектам качества относительно конкурентов.
- Имеет карту/модель рисков по всему кластеру, системно работает по предотвращению рисков в кластере.
- Координирует общекластерные проекты по тестированию.