среда, 27 апреля 2016 г.

Тренинг Баранцева про автоматизацию

Пару недель назад прошел двухдневный тренинг Алексея про автоматизацию тестирования.

Тренинг корпоративный, на 20 человек, 2 дня. Полностью посвящен теории, стратегии, управлению, планированию. Те крохи практики и примеров, которые в нем были мы беспощадно убрали, благо у нас была возможность немного подвигать программу.
Считаю, что польза была нанесена. Первый день укладывали в головы то, что в них уже было, но в правильном порядке, второй - больше про новые штуки.
Особенно полезно тем, кто уже набил шишек, написал тестов и теперь думает - как с этим жить. Новичкам зайдет хуже, так как Алексей описывает решения проблем, которых у них еще не было.

Из понравившегося - особое внимание было уделено различиям между понятиями автоматизированный и автоматический.
А также о правильной терминологии, которая позволяет правильно мыслить. В частности, что автоматизацию тестирования стоит называть инструментальной поддержкой тестирования.

Пересказывать содержимое не буду, программу тоже.
Отмечу пару моментов.
Во время тренинга Алексей просил каждого из нас письменно отвечать на разные вопросы:

  • Опишите ваши проблемы с автоматизацией тестирования
  • Опишите цели автоматизации
  • Опишите, почему не надо заниматься автоматизацией
  • Опишите, что бы вы сделали, если бы у вас была неделя
Наиболее интересны были ответы на первый и последний вопросы, так как они отлично группировались в кластера.

Сперва о проблемах. Самая главная:
Недостаток времени
Нет времени на развитие автотестов (слишком много текущих задач)
Не нравится распределение времени на ручное тестирование/автотесты
Мало времени на автотесты (написание)
На тесты постоянно не хватает времени. Чтобы освободить время, нужны тесты (много регресса). Замкнутый круг
Менеджеры не выделяют ресурсы для развития автотестов
Приходится постоянно метаться между ручным и автотестированием. И то и другое размазывается. Нужна структуризация
Не нравится, что не можем выделять задачи по автотестам в отдельные и автотесты делаются по остаточному принципу
Вторая по значимости:
Нет понимания какую область функциональности нужно покрыть автотестами
Не понятен процент покрытия автотестами
Покрытие тестами небольшое
Не весь основной критичный функционал покрыт автотестами
Разные тестеры не понимают, что проверяют автотесты
Непонятно, что проверяют тесты, доставшиеся в наследство от предыдущих тестеров
Тестами не покрыт весь функционал
Алексей справедливо заметил, что обе эти проблемы лежат вне плоскости автоматизации и техническими средствами не решаются. Первая относится скорее к ожиданиям руководства и коллег, постановке целей, визуализации деятельности.
О второй было сказано так:
А покрытие ручными тестами у вас есть? Как вы его измеряете, считаете, узнаете? 
 Согласен, вопрос трассировки кейсов до кода или до требований, а также вопрос измерения покрытия - ортогонален автоматизации. Это скорее про аналитику и дизайн тестов.

Теперь о том, чем мы бы занялись, если бы у нас была неделя.
От себя замечу, что неделя есть практически всегда и у всех. А Алексей добавил еще кучу способов легитимно ее найти.
Спецпроекты на неделю тоже отлично кластеризуются. Стабильность - это очень важно.
До конца разобраться со стабильностью автотестов
Нестабильность тестов, нужно больше негуевых операций
Тесты ломаются из-за изменений в контенте - надо править либо их, либо контент
Решить проблему нестабильности тестов из-за драйвера
Поднять устаревшие тесты (из-за изменения UI)
Много анимаций в интерфейсе => нестабильные тесты. Сложное обеспечение предусловий тестов.
Мы знали сами и на тренинге это неоднократно повторялось: тесты надо писать через саме надежные интерфейсы - программные, а не гуевые. Ну и обеспечение изоляции.
Второй кластер задач на неделю:
 Вычислить дублирующие проверки
Проанализировать, что есть пачками, вынести подготовку данных, использовать не перетирания, а уже существующие данные, переводить на не UI
Исследовать применение фикстур для тестовых классов
Разделить длинные сценарии на более короткие
Разбить большие сценарии на компактные, упростить сценарии. Разбить длинные сценарии на короткие (1 assert, но не до абсурда), потом объединить в группы
Тщательная проработка сценариев, выкинуть все лишнее
Функ.тесты, которые пишут разработчики, слишком длинные. Приходится разбивать
Выкинуть лишние тесты
Вынести общие части из групп тестов
У старых тестов не понятные имена и структура
много тестов на проверку логики через пользов. интерфейс (нужно перевести эти проверки на более низкий уровень)
Тех долг: оптимизация тестовых сценариев
Тех долг: увеличение покрытия существ.тестов
И снова не техническая проблема, а сугубый тест-дизайн, то есть то, ва чем тестировщики по умолчанию должны быть сильны.

По сути все эти списки - программа для следующих обучений.
Посмотрим, что из этого выйдет.

Картинка просто понравилась. Люблю сарказм.
 

вторник, 26 апреля 2016 г.

О сетевых графиках

Лет пятнадцать-двадцать назад я читал книгу С "Джу" через Тихий океан.
Не знаю, можно ли ее сейчас купить, но вот ссылка.
Авторы - Дончо и Юлия Папазовы - описывают, как они пересекли тихий океан на спасательной шлюпке.
Классные люди. 
Книга тогда показалась крайне интересной. Шторм, починка рации, волны, надежный человек рядом...

А сейчас я бы восхитился немного другими вещами. Позволю себе процитировать:

Выход экспедиции «Планктон-IV» из Кальяо задержался лишь на два дня против срока, который по сетевому графику был определен за четыре года до ее начала.
А? Лихо?
Я думаю, именно это отличает инженеров от выпускников (нас с вами, айтишнички).
Поднимите руки, кто не продалбывает четырехдневные задачи на 2 дня? Хех.

В частности, Дончо рассказывает, что очень сильно помогли ему в планировании сетевые графики. Такая вот простая штука:

К чему это я?

Сегодня запостили итоги встречи-планирования сообщества тестеров. На ней тоже пытались построить сетевой график. По ощущениям - штука очень полезная, если делать правильно. Надеюсь, мы сделали правильно. Хотя скорее не очень.
Вчерне - как-то так, это только часть:

Я считаю, что за срок от 8 месяцев до года надо получить результат. Это в 10 раз больше, чем нужно. но это все-таки сообщество - люди не на зарплате. А сугубо в добровольное свободное время.
Будем посмотреть.

понедельник, 18 апреля 2016 г.

Следующей встречи сообщества пост

Встреча, на которой мы выберем тактику и набросаем план


Оказывается, за один день найти помещение - не очень то тривиальная задача.
А еще мы на корню загубили идею голосования за дату проведения встречи сообщества.
Было две даты - 23 и 30 апреля. И за них было отдано поровну голосов. Итого - выбирали сами. Так умерла демократия.  Мне кажется, она часто так умирает.

Те, кто не сможет попасть на встречу 23го - пишите мне или Насте. Ну и следите за новостями на сайте.

P.S. Странно, но блог все больше превращается  в ссылки на другие ресурсы и все меньше о моих мыслях. Я исправлюсь.

понедельник, 11 апреля 2016 г.

Дамп 2016

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

Наверное из-за этого - не побывал ни на одном докладе других секций - после того как в 16 закончилось тестирование - гулял и болтал. С кем только нет.

Оттого же пропустил все увеселения, которые нам предлагали компании. Немного раздражали разве что клавиатуры и очереди за кофе.

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

Еще у меня такое ощущение, что именно благодаря повышенной концентрации тет-а-тет диалогов, эта конференция была наиболее полезной лично для меня.


На будущее - а я скорее всего еще раз прочту этот пост в январе следующего года - надо менять формат и делать полсекции.

И да, благодарности:
Лена Воронина. Летала, решала проблемы, искала вместо нас докладчиков, задавала правильные вопросы и давала мудрые советы. Все это с улыбкой. Где-то здесь несформулированные слова про искреннее внимание и соучастие.

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

Докладчики. Те, кто, собственно, и приближал перформанс к смыслу:
Андрей Малых
Евгений Сабиров
Андрей Усов
Кирилл Раткин
Анастасия Ронжина
Артём Аксёнов
Василий Никишин

Фотки. Раз:
Два:
Три:
Четыре:
Пять:
Шесть:

Напоминания пост

Просто напоминаю. Сегодня последний день, когда можно успеть записаться.
Дальнейшие инструкции - в почту зарегистрировавшимся.
https://testsession.timepad.ru/event/303640/

вторник, 5 апреля 2016 г.

Постоянства пост

Уже в третий раз говорю себе:
- Больше я не буду принимать участие в организации Дампа, максимум - докладчиком.
Скорее всего, опять вру.