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

Автотесты. Борьба за внедрение

Автотесты. Борьба за внедрение

Владимир Остаточников (Свемел, Ведущий программист). @ Moscow Python Meetup №76
"Хочу рассмотреть кейс, когда разработчик приходит на проект, а там: автоматизации тестов — нет и команда не хочет ее внедрять; cd/ci — нет и не предвидится. Хочу обсудить: типовые причины, которые приводят к такой ситуации; проблемы, которые будут у разработчиков."

Видео: https://moscowpython.ru/meetup/76/fight-for-autotests/

Moscow Python Meetup
PRO

December 23, 2021
Tweet

More Decks by Moscow Python Meetup

Other Decks in Technology

Transcript

  1. Автотесты. Борьба за внедрение. Начало.

  2. Обо мне Остаточников Владимир Опыт в разработке: 10+ лет Почта

    для вопросов: [email protected]
  3. Боль • 25 собеседований за 2 недели (декабрь 2020); •

    0 упоминание о автотестах в вакансии; • 3 из собеседующих затронули тему тестирования; • 8 “автотест диссидентов”.
  4. Подходящее время не придет никогда. Цитаты: • На написание тестов

    нет времени.(с) • Напишем, когда реализуем все функции ПО, не хотим тесты переписывать.(с) • Покроем тестами только важные части.(с) Вопросы для обсуждения: 1. Разработчики будут все проверять руками и это будет гораздо быстрее? 2. Какой шанс того, что вы потом сможете внедрить тесты? 3. Какая-то часть кода меняется постоянно, когда наступит это “потом”?
  5. Сложная архитектура . Цитаты: • Не будем писать тесты, потому

    что нам придется сторонние сервисы дублировать, а их много(с) • На беке много сущностей, поэтому будет много моков. Чем больше мок объектов на один тест, тем меньше пользы от теста. (с) • Архитектура постоянно меняется, что же нам тесты переписывать?(с) Вопросы для обсуждения. 1. Стаб объекты и моки нужны, но если их на один тест нужно много, то, наверно, архитектура кода требует пересмотра? 2. Почему архитектура приложения не гибкая? 3. Может быть команде нужены бизнес аналитик и архитектор?
  6. Нет доверия к команде. Цитаты: • Программисты плохо тестируют.(с) •

    Для тестов нужны хорошие программисты, потому что это навык, а это дорого.(с) • У нас нет программистов, которые умеют хорошо писать тесты.(с) • Тесты, все равно, работают криво\не корректны.(с) Вопросы для обсуждения. 1. Возможно, менеджмент недооценивает профессиональный уровень команды? 2. Компания сознательно идет на написание кода, которой превратиться в суровое легаси?
  7. Почему нужно обсудить автотесты? 1) Типичные возражения против введения автотестов

    - это попытка скрыть проблемы архитектуры ПО и организации разработки. 2) Анализ возражений позволяет показать настоящие проблемы, которые есть в проекте и в организации разработки. 3) Простое обсуждение темы атоматизации тестирования помогает понять, хотите вы заниматься разработкой предлагаемого проекта или нет.
  8. Благодарю за внимание! С интересом выслушаю ваши вопросы. Присылайте ваши

    возражения на почту : [email protected]