+380 (44) 468 20 50

Как правильно сообщать об ошибках?

Сообщаем разработчикам об ошибках

Примечание: ниже перевод статьи "Reporting bugs — a how-to guide", в которой приводится ряд нехитрых действий, которые могут помочь как пользователю, так и разработчику справиться с ошибками на сайте или в веб-приложении. В свете постоянного появления в Рунете проектов со статусом «бета», статья может быть особенно полезна.

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

«Оно просто не работает»

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

Хороший отчет

Хороший отчет об ошибке должен сообщить разработчику три важные вещи:

  • какое поведение ожидалось;
  • что же на самом деле произошло;
  • что вы при этом сделали или делали.

Какое поведение ожидалось

Существует два типа «ошибок»: в первом случае что-то ломается — и вы видите сообщение об ошибке, либо данные, которые вы загрузили, исчезли, либо вы отправили данные через форму, и данные не сохранились. Такие ошибки, в общем случае, довольно легко обнаруживаются, и о них просто сообщать: в этом случае разработчику достаточно знать, что же вы делали или вводили в это время, чтобы он смог воспроизвести эту ошибку, а затем исправить.

Второй тип ошибок заключается в том, что приложение действует не так, как вы ожидаете. Это может происходит в том случае, если разработчик неверно воплотил часть технического задания, но, может быть, приложение просто не может работать так, как вам хочется. В таком случае разработчик полагает, то оно работает так, как задумывалось, и оно действительно «работает», хотя, может быть, действительно неправильно. Если в своем сообщении об ошибке вы скажите, что эта возможность не работает, разработчик может потратить массу времени, пытаясь обнаружить какую-либо ошибку в этой части приложения, хотя ему всего лишь нужно понять, что оно не работает так, как вы ожидаете. Если в своем сообщении вы напишите о том, что ожидаете от приложения, то разработчику будет проще понять: «Хмм, ему хочется, чтобы происходило «А», но на самом деле происходит «Б» — и правильное решение будет принято значительно быстрее.

Что же на самом деле произошло

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

«Форма не отправляется — я остаюсь на той же странице, где был».

Но, возможно, в результате отправки формы появляется пустая страница:

«После отправки формы загружается пустая страница».

Если на экране появилось сообщение об ошибке, включите его в ваше сообщение. Просто скопируйте и вставьте его.

Если вы используете Internet Explorer, тогда ваш браузер может не показывать сообщения об ошибках, которые выдает сервер, а просто общую страницу с ошибкой. Убедитесь, что IE показывает именно то сообщение об ошибке, которое пришло от сервера. Для этого зайдите в Tools > Internet Options > Advanced, затем прокрутите вниз и выключите опцию Show friendly http error messages. Для пользователей IE 7 нужно зайти в Сервис > Свойства Обозревателя > Дополнительно и включить опцию Выводить подробные сообщения об ошибках http.

Что вы при этом делали

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

Последовательность действий

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

Любые введенные данные

Если проблема возникает после того, как вы вводите какие-либо данные в форму, включите эти данные в свое сообщение об ошибке. Если вы загружаете что-то на сервер, например, картинку, можно добавить и ее.

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

Браузер и операционная система

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

Эффективное сообщение об ошибке может сильно повлиять на то, как быстро заявленная проблема может быть решена, и предотвратить срыв планов у обеих заинтересованных в процессе сторонах. Если вы включите вышеперечисленную информацию, пусть даже она окажется бесполезной, разработчик отнесется к вам с большей степенью уважения. Вам не нужно писать целый рассказ, просто несколько понятных строчек, которые будут включать ключевую информацию о том:

  • какое поведение ожидалось;
  • что же на самом деле произошло; и
  • что вы при этом сделали или делали.

Этого будет достаточно, чтобы выделить наиболее сложные проблемы из числа существующих. И если ошибку можно повторить, значит, она уже на полпути к устранению.

Спасибо всем, кто читал и читает мои переводы. Буду признателен за любые комментарии и дополнения. Удачи в устранении ошибок!

Оригинал статьи (русский) - http://www.habrahabr.ru/

Автор перевода - sunnybear

  • Сайт от идеи до реализации
  • Каких целей можно достичь с помощью разработки сайта? Какие задачи должны быть для этого решены? Как правильно выбрать исполнителя? Какова среднерыночная стоимость разработки сайта? Из чего складывается стоимость услуг, какие факторы влияют на цену? Что такое качественный сайт?
  • подробности »
  • Какие сайты заслуживают доверия?
  • Как Вы думаете, какой фактор наиболее сильно влияет на доверие посетителя к веб-сайту, на котором он находится? Солидное имя владельца сайта? Точность или полезность содержащейся на нем информации? Стиль написания статей? Это безусловно важные факторы, но согласно исследованию проведенному Стенфордским университетом, Consumer WebWatch и Sliced Bread Design, фактор номер один это дизайн сайта...
  • подробности »
  • Сколько стоят бесплатные тендеры?
  • В UK затраты средней дизайнерской компании на участие в тендерах и конкурсах составляют в среднем 38000 фунтов в годВ такую сумму обходится участие в тендерах среднему британскому дизайн агентству...
  • подробности »
  • Сайты встречают по одежке
  • Считанные доли секунды уходят у пользователей интернета на то, чтобы составить впечатление о качестве того или иного сайта, утверждают авторы нового исследования...
  • подробности »
  • Сайт - лицо компании
  • Сайт - лицо компании, а отсутсвие сайта - Ваше мнение? Обсуждается вопрос зачем нужен сайт производственной компании, лидеру отрасли с оборотом 60 млн...
  • подробности »
  • Когда плохой дизайн становится стандартом
  • Создавать сайты сейчас стало проще: если вы не знаете, как вам оформить определенный элемент дизайна страницы, все что вам нужно сделать, это зайти на двадцать наиболее посещаемых сайтов в Интернете и посмотреть, как этот элемент сделали они...
  • подробности »
  • Flash неприемлем на 99%
  • Вкратце: Несмотря на то, что мультимедиа прокладывает себе дорогу в Web, современная технология Flash ухудшает удобство пользования Web по трем причинам...
  • подробности »
  • Куда уходят дизайнеры
  • За последние примерно полтора года многие лучшие специалисты в индустрии дизайна, похоже, сдались, поняв что для Web нужно делать простые, быстрые сайты, вместо крутого, навороченного дизайна. А ведь большая часть из того, что они делали, относилась как раз к навороченному дизайну. Но если высшая каста дизайнеров решила махнуть рукой на Web, чьи же руки будут его делать, и чьи умы будут теперь определять его дальнейшее развитие? Последствия могут быть самые тягостные.
  • подробности »
  • Памятка Заказчика Web-решения
  • Вопросы создания или модернизации Web-сайта сегодня актуальны для многих компаний, однако сориентироваться в потоке предложений часто непросто. Тем более что стоимость услуг отечественных Web-разработчиков различается в десятки и даже сотни раз. Как найти своего Исполнителя? Не претендуя на истину в последней инстанции, в данной статье мы попытаемся предостеречь вас от некоторых ошибок и снабдить полезными рекомендациями.
  • подробности »