Как стать автором
Обновить

Комментарии 18

А как получается 7й пункт когда возвращают устройство полностью разряжаным? Если речь идет о телефоне, то разраб же отлаживает, а значит телефон заряжается

Пока отлаживает — да, заряжается. Но потом он может подключить для отладки другой девайс, а этот будет просто лежать рядом. Когда тестер за ним приходит, он уже запросто может быть севшим.

Нулевой пункт — не пытаться звонить ему с поздравлениями в воскресенье.

-1. Не предлагайте ему работу в mail.ru

А мне кажется тут пропущен пункт «не учите тестировщика КАК тестировать»
Eсть такое немножко :)
Mне как-то раз ТЛ сказал «в идеале багрепорт должен содержать минимум шагов для воспроизведения». А я в тот раз в спешке сделал запись экрана, что баг все еще воспроизводится, чтобы его просто не закрыли. Как я обиделся на такое замечание! Один единственный раз мне пришлось поступить «не по Кодексу Самурая», и сразу прилетело. Я же молчу, что в идеале программа которую пишет человек с профессией Software Engineer не должна нуждаться в тестировании…
По п.5. А может кто-нибудь посоветовать статью, в которой описываются плюсы от тестирования кода самим разработчиком?
я думаю их нет. Это ведь почему делается… это как вычитка текста. Лучше всего ее сделает не автор с экрана, а другой человек с распечатки. Поэтому тестирует лучше третье лицо и официальную сборку (типа «распечатку»), а не dev билд («у меня на машине/в IDE/ работает»).
Согласен — сторонний взгляд часто спасает. Меня беспокоят другие случаи — когда разработчик поменял одну строчку и сразу пушнул, не убедившись, что приложение даже запускается. Да, CI это не обновит на деве, но всё равно много пройдёт времени, прежде чем разработчик поймёт, что ещё не закончил с этой задачей.
Обычно тестирование кода разработчикам не заменяет тестирование тестировщиком. Тестирование кода разработчиком как правило предусматривает проверку базовых позитивных сценариев. Очевидный плюс — что исключены ситуации когда на тестирование прилетает в принципе не рабочий код, который протестировать невозможно, потому что в нем базовый функционал не работает.
А еще очень полезно, если разработчик эти базовые сценарии задокументирует, т.к. некоторые вещи, очевидные разработчику не всегда очевидны тестировщику и наоборот, и такой сценарий иногда позволяет увидеть / понять причину логических ошибок.

Так agile поможет или не?)

Насчёт второго пункта и рекомендации использовать agile — а чем это собственно поможет? Допустим есть спринт две недели, есть куча задач, которые занимают скажем неделю и больше. Разработчики делают эти задачи, тестировщики в лучшем случае занимаются какими то exploratory задачами, в худшем просто курят бамбук. И за два дня до закрытия спринта и вваливается дохрена задач от разработчиков на валидацию — и привет аврал.

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

О какой равномерной загрузке может идти речь, если большинство задач в спринте занимают полспринта и больше? При таких условиях за два-три дня как раз и будет приходить вал задач. Да, это лучше, чем если бы задачи делались три месяца, а потом у тестировщиков неделя на валидацию, но проблема не решается — вместо огромного аврала раз в несколько месяцев регулярные авралы раз в две недели. В компании где я работаю это как-то обходится тем, что разработчики берут задачи из следующего спринта, в результате в начале каждого спринта длинные задачи уже наполовину выполнены и нагрузку на тестировщиков действительно получается размазать, но даже так случаются факапы. Плюс при этом сами спринты размазываются и становятся сложнее предсказуемыми (а ведь это одна из главных фишек скрама). Поэтому и интересно — может есть решение лучше?

У каждой компании свои вариации организации рабочего процесса. Ясное дело, что и при скраме/аджайле бывают факапы. Но истина в том, что все задачи не одинаковы объёмом, плюс, как вы заметили, разработчики на дев-контуре могут начинать делать задачи на следующий спринт во время простоя в текущем спринте.
Опять же, в компании в которой я тружусь, мы имеем право переносить задачи и снимать их с релиза в том случае, когда они не аффектят задачи параллельных команд и подразделений, что добавляет дополнительную гибкость в рабочий процесс. Также мы можем при необходимости вывести задачу в не до конца готовом виде, если в ней есть критические недостатки, чтобы не откатывать всю разработку или выводить задачи поэтапно — на часть пользователей или дробить разработку на малые части. Плюс можно выводить доработку в заблокированном или скрытом виде. В общем, возможностей море.
И да, как показывает практика, скрам более гибок нежели водопад. Но есть области, где водопад единственно возможен.
Тестировщики не курят бамбук, а готовят тестирование этих будущих задач — создают тестовые данные, если нужно, уточняют требования, пишут тесты и чеклисты.
Плюс не все задачи приходят за 2 дня до конца спринта. Если разработчики выкатывают новый билд каждый раз, когда что-то готово, то спринт проходит довольно мирно. Аджайл не спасение ото всех бед, конечно. Но он довольно неплохая штука.
Написано так, будто никто свой код не тестирует и не должен. Компилится, мол, и так сойдет.
Статься в целом содержательная но и не нова по своей сути… Мне не понравилось что половина более менее интересной(не обязательно полезной) информации нужно читать по ссылке, да еще и на английском языке… Как бы статья на русском и ни что не намекает на содержание в ней инглиша. Я как бы не против, но считаю, статья от этого страдает.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий