Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Вам не нужны разработчики автотестов!

Вам не нужны разработчики автотестов!

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

Anastasia

March 22, 2018
Tweet

More Decks by Anastasia

Other Decks in Programming

Transcript

  1. Обо мне ‣ Создатель QA сообществ в Telegram @qa_ru и

    @qa_jobs ‣ Agile testing coach, эксперт по инженерным практикам ‣ В QA c 2012 года, в IT с 2007 года ‣ Спикер на QAFest2016 
 и XPDays2016, TestCon2017, SQADays2017, DUMP2018
  2. Автоматизация тестирования - совместный труд QA и Dev QA ‣

    Придумывают тест-кейсы ‣ Тестируют ПО вручную
  3. Автоматизация тестирования - совместный труд QA и Dev QA ‣

    Придумывают тест-кейсы ‣ Тестируют ПО вручную ‣ Пишут тестовую документацию
  4. Автоматизация тестирования - совместный труд QA и Dev QA ‣

    Придумывают тест-кейсы ‣ Тестируют ПО вручную ‣ Пишут тестовую документацию ‣ Автоматизируют написанные тест-кейсы
  5. Автоматизация тестирования - совместный труд QA и Dev QA ‣

    Придумывают тест-кейсы ‣ Тестируют ПО вручную ‣ Пишут тестовую документацию ‣ Автоматизируют написанные тест-кейсы ‣ Сопровождают разработанные автотесты
  6. Автоматизация тестирования - совместный труд QA и Dev QA ‣

    Придумывают тест-кейсы ‣ Тестируют ПО вручную ‣ Пишут тестовую документацию ‣ Автоматизируют написанные тест-кейсы ‣ Сопровождают разработанные автотесты
  7. Автоматизация тестирования - совместный труд QA и Dev QA ‣

    Придумывают тест-кейсы ‣ Тестируют ПО вручную ‣ Пишут тестовую документацию ‣ Автоматизируют написанные тест-кейсы ‣ Сопровождают разработанные автотесты ‣ Анализируют результаты автотестов
  8. ‣ Определить набор тест-кейсов для автоматизации ‣ Выбрать стек технологий

    и инструменты ‣ Разработка фреймворка, специфичного для продукта ‣ Подготовка окружения для прогона тестов ‣ Спорить с тестировщиком о том, что написанные тесты - рабочие Деятельность разработчика автотестов
  9. QA engineer Regression testing Manual testing User Story Artefact Product

    Testing scrum process Test automation dev team
  10. НЕТ, потому что ‣ Отсутствует срочная ценность от автоматизации ‣

    Стоимость продукта значительно вырастает ‣ «Купленные» люди - не часть команды
  11. НЕТ, потому что ‣ Отсутствует срочная ценность от автоматизации ‣

    Стоимость продукта значительно вырастает ‣ «Купленные» люди - не часть команды ‣ Непрозрачность процесса тестирования
  12. НЕТ, потому что ‣ Отсутствует срочная ценность от автоматизации ‣

    Стоимость продукта значительно вырастает ‣ «Купленные» люди - не часть команды ‣ Непрозрачность процесса тестирования ‣ Бизнес не понимает, почему он должен платить в надежде на долгосрочный эффект
  13. «Сотрудничество» QA Dev & QA: • Тестировщики - заказчики •

    Dev QA - сервисная команда • Team lead - прокси в коммуникациях между людьми
  14. «Сотрудничество» QA Dev & QA: • Тестировщики - заказчики •

    Dev QA - сервисная команда • Team lead - прокси в коммуникациях между людьми • С момента подачи «запроса» до получения результата расходуется время
  15. «Сотрудничество» QA Dev & QA: • Тестировщики - заказчики •

    Dev QA - сервисная команда • Team lead - прокси в коммуникациях между людьми • С момента подачи «запроса» до получения результата расходуется время • Недоверие к автотестам у тестировщиков
  16. • Разработчики - тоже заказчики Сотрудничество QA Dev & DEV:

    • Недоверие к автотестам • Плодится «зоопарк» технологий
  17. • Разработчики - тоже заказчики Сотрудничество QA Dev & DEV:

    • Недоверие к автотестам • Плодится «зоопарк» технологий • Дублирование инструментов для решения одинаковых проблем
  18. • Разработчики - тоже заказчики Сотрудничество QA Dev & DEV:

    • Разработчики не используют результат труда QA Dev • Недоверие к автотестам • Плодится «зоопарк» технологий • Дублирование инструментов для решения одинаковых проблем
  19. PM vs QA Dev: • Почему автоматизация стоит так дорого?

    • Что мы получаем от автоматизации?
  20. PM vs QA Dev: • Почему автоматизация стоит так дорого?

    • Что мы получаем от автоматизации? • Почему ручное тестирование до сих пор еще есть?
  21. PM vs QA Dev: • Почему автоматизация стоит так дорого?

    • Что мы получаем от автоматизации? • Почему ручное тестирование до сих пор еще есть? • А может отказаться от автоматизации?
  22. PM vs QA Dev: • Почему автоматизация стоит так дорого?

    • Что мы получаем от автоматизации? • Почему ручное тестирование до сих пор еще есть? • А может отказаться от автоматизации? • Почему автотесты постоянно ломаются?
  23. Фейлы автоматизации тестирования выделенной командой • Непрозрачность автоматизированного тестового покрытия

    • Автоматизировали то, что не используется при тестировании продукта • Не анализируются результаты автотестов
  24. Фейлы автоматизации тестирования выделенной командой • Непрозрачность автоматизированного тестового покрытия

    • Автоматизировали то, что не используется при тестировании продукта • Не анализируются результаты автотестов • Нестабильные автотесты
  25. НЕТ, потому что ‣ Рынок труда испытывает нехватку людей в

    QA ‣ Стоимость продукта значительно вырастает
  26. Test automation developer II способ 1. Sprint planning 2. Grooming

    3. DSM 4. Sprint review 5. Demo 6. Programming test-case ~ 20-30 часов ИТОГО: ЗАНЯТОСТЬ НА 50%
  27. ‣ Разработчик автотестов не полностью занят ‣ Не хочет заниматься

    ручным тестированием ‣ Не хватает навыков для разработки сервисов НЕТ, потому что
  28. Test automation developer III способ 1. Sprint planning 2. Grooming

    3. DSM 4. Sprint review 5. Demo 1. Sprint planning 2. Grooming 3. DSM 4. Sprint review 5. Demo ~ 10 часов ~ 10 часов ИТОГО: ВСЕГО ~ 20 ЧАСОВ НА КОДИНГ
  29. Боли: Отсутствие собственной экспертизы внутри команды Автоматизация тестирования “отстает/отсутствует” от

    разработки продукта Непрозрачность процессов тестирования для команды Сложность поиска разработчиков автотестов
  30. Unit-тесты Разработчик e2e-тесты, компонентные тесты Разработчик + тестировщик UI-приемка Вся

    команда, включая Ops Стратегия Интеграционные тесты Тестировщик + Аналитик
  31. ‣ Используйте простые инструменты для быстрой автоматизации тестов ‣ Или

    создайте инструмент для написания автотестов непрограммистами Что для этого надо?
  32. ‣ Используйте простые инструменты для быстрой автоматизации тестов ‣ Или

    создайте инструмент для написания автотестов непрограммистами ‣ Научите тестировщика чуть-чуть программировать Что для этого надо?
  33. ‣ Используйте простые инструменты для быстрой автоматизации тестов ‣ Или

    создайте инструмент для написания автотестов непрограммистами ‣ Научите тестировщика чуть-чуть программировать ‣ Выстройте правильную пирамиду тестирования Что для этого надо?
  34. ‣ Используйте простые инструменты для быстрой автоматизации тестов ‣ Или

    создайте инструмент для написания автотестов непрограммистами ‣ Научите тестировщика чуть-чуть программировать ‣ Выстройте правильную пирамиду тестирования ‣ “Размажьте” процесс автоматизации тестирования по команде Что для этого надо?
  35. ‣ Команда сама отвечает за тестовое покрытие ‣ Не дублируется

    автоматизация тест-кейсов разными людьми “Размажьте” процесс автоматизации тестирования по команде
  36. ‣ Команда сама отвечает за тестовое покрытие ‣ Не дублируется

    автоматизация тест-кейсов разными людьми ‣ Быстро решается проблема устаревших автотестов “Размажьте” процесс автоматизации тестирования по команде
  37. Мнение: «Вы – это среднее пяти человек, с которыми проводите

    большую часть своего времени» Джим Рон
  38. Самые большие прорывы происходят от команд: • Этот инструмент будет

    решать проблемы определенного контекста ваших продуктов
  39. Самые большие прорывы происходят от команд: • Разработанный инструмент можно

    легко переиспользовать другим командами • Этот инструмент будет решать проблемы определенного контекста ваших продуктов
  40. Самые большие прорывы происходят от команд: • Разработанный инструмент можно

    легко переиспользовать другим командами • В нем будет использоваться уже известный командам стек технологий • Этот инструмент будет решать проблемы определенного контекста ваших продуктов
  41. 40 
 тестировщиков сами пишут тесты 6 супертестировщиков развивают библиотеку

    30 мин ручного тестирования vs 5 дней 1 тестировщик на команду vs
 4-6 тестировщиков
  42. • Выделенная команда автотестеров - это рудимент waterfall • Выделенные

    разработчики автотестов - это дорого • Поиск/хантинг этих людей долог и дорог Выводы
  43. • Выделенная команда автотестеров - это рудимент waterfall • Выделенные

    разработчики автотестов - это дорого • Поиск/хантинг этих людей долог и дорог • Разработка автотестов значительно отстает от разработки продукта Выводы
  44. Что должно быть, 
 чтобы всё завелось? • Команда должна

    хотеть сама писать автотесты • Команда сама должна решить, 
 кто у них будет это делать