А вы знали, что в каждой 1000 строк кода можно найти от 100 до 150 ошибок?
Процесс создания веб-приложений может показаться довольно занимательным. Однако в этом процессе команда разработчиков сталкивается с самыми разными ошибками, что влечет за собой необходимость использовать системы отслеживания ошибок.
Наличие ошибок вовсе не говорит о вас плохо как о разработчике. И тем не менее, если ошибку обнаружит конечный пользователь, вас могут назвать «не очень хорошим» разработчиком.
Ошибки могут привести к потере дохода, нарушению всего производственного процесса и к тому, что впечатление клиента от использования веб-приложения будет испорчено. Представьте, что вы работаете в сфере электронной коммерции и вы создали хорошую целевую страницу, но ваши клиенты не могут оформить заказ на покупку товаров! Так что, если вы не будете способны отслеживать ошибки в своем приложении, вы можете многое потерять.
Что такое отслеживание ошибок?
Отслеживание ошибок, которое также известно, как отслеживание дефектов и отслеживание проблем, - это процесс мониторинга и регистрации ошибок или багов в процессе тестирования программного обеспечения. В больших системах или веб-приложениях могут скрываться десятки или даже сотни ошибок. Все эти дефекты/ошибки необходимо отследить, оценить и расположить в порядке приоритета отладки.
Как работает отслеживание ошибок?
Ошибка возникает тогда, когда система или приложение работает не так, как было задумано. Эти ошибки могли быть допущены разработчиками или проектировщиками программной архитектуры. Для того, чтобы отслеживать ошибки, которые возникают в процессе его разработки, и своевременно сообщать о них, команды тестировщиков используют системы отслеживания ошибок.
Система отслеживания ошибок должна иметь базу данных, где фиксируется вся информация об известных ошибках. Это может быть время обнаружения ошибки, степень серьезности ошибки, то, как ошибка влияет на функционирование приложения, то, как можно воспроизвести ошибку, кто ее обнаружил и кто работает над ее исправлением.
Как правило, ошибки проходит через следующие стадии:
- Активная ошибка. Проводится отслеживание ошибки.
- Тестируемая ошибка. Ошибка исправлена и готова к тестированию.
- Проверенная ошибка. Ошибка повторно протестирована и проверена QA-отделом.
- Закрытая ошибка. QA-отдел повторно протестировал ошибку после того, как она была исправлена и признана «не ошибкой».
- Вновь открытая ошибка. К сожалению, ошибка может пройти все эти стадии и все равно остаться неисправленной. В таком случае эту ошибку можно открыть снова.
Классификация ошибок
Все ошибки разные. Некоторые ошибки могут минимально навредить функциональности приложения, а некоторые могут привести к полному отказу системы.
Вот так выглядят основные группы ошибок:
- Очень незначительная ошибка. Такую ошибку можно вполне проигнорировать, или найти для нее временное решение. Такая ошибка никак не влияет на выпуск продукта.
- Отказ не критически важных систем. Для такой ошибки также существует временное решение. Систему с такой ошибкой можно выпускать только в том случае, если эта ошибка хорошо задокументирована.
- Нарушение функциональности. Для такой ошибки возможно существует временное решение, но его нельзя назвать удовлетворительным. Систему с такой ошибкой выпускать нельзя.
- Критическая ошибка. Такая ошибка может привести к необратимой потере данных и полному отказу приложения. Систему с такой ошибкой выпускать нельзя.
Какими важными функциями должна обладать система отслеживания ошибок?
Назначение приоритетов
Все ошибки разные, поэтому, как только ошибка была обнаружена, ей необходимо назначить приоритет. Система отслеживания ошибок обязательно должна иметь такую функцию, чтобы следить за тем, как ошибка влияет на приложение, и расставлять приоритеты в зависимости от степени серьезности ошибок.
Статус отслеживания
Скорее всего, при создании большой системы вы допустите большое количество ошибок. Система отслеживания ошибок должна отслеживать эти ошибки до тех пор, пока они не будут устранены, и неважно, серьезная она или не очень. Соответственно, у нее должна быть панель наблюдения, где будут перечислены все возникающие проблемы и их текущий статус. Таким образом, вам будет проще их отслеживать.
Аналитика и отчеты
Ошибка может стать хорошим «учителем». В идеальной системе отслеживания ошибок должна быть функция аналитики и генерации отчетов, которая бы собирала все данные по этой ошибке (со дня ее обнаружения до момента ее устранения). С помощью такой системы вы сможете с легкостью выявлять тенденции, анализировать ключевые показатели и генерировать собственные отчеты.
Ниже приведен краткий обзор на лучшие системы отслеживания ошибок, которые будут рассмотрены далее.
Продукты |
Важные функции |
Zoho Bug Tracker |
Отслеживание ошибок с назначением приоритетов, индивидуальной настройкой и возможностью совместной работы |
monday.com |
Организация рабочего процесса, управление взаимодействием с клиентами (CRM – Customer Relationship Management) и отслеживание ошибок с визуализацией |
Bugyard |
Визуальная обратная связь от коллег и клиентов |
BugHerd |
Управление проектами и отслеживание ошибок с генерацией отчетов в режиме реального времени |
Marker.io |
Система визуального оповещения об ошибках с возможностью совместной работы в режиме реального времени |
DoneDone |
Отслеживание ошибок в режиме реального времени, персонифицируемые шаблоны |
MantisBT |
Система отслеживания ошибок с открытым исходным кодом и генерацией отчетов от пользователей и команд |
Disbug |
Обнаружение ошибок через журналы, записи и снимки экрана. |
Ruttl |
Веб-средство обратной связи с функцией отслеживания ошибок и возможностью совместной работы |
Backlog |
Система отслеживания задач, персонифицируемые шаблоны и репозитории |
Bird Eats Bug |
Отчеты об ошибках со снимками экрана и интеграция со сторонними инструментами |
А теперь давайте рассмотрим все эти системы более подробно.
1. Zoho Bug Tracker
Zoho Bug Tracker – это простая, быстрая и масштабируемая система отслеживания ошибок. С ее помощью разработчики могут эффективно обрабатывать ошибки.
Отличительные особенности:
- Назначение приоритетов. С помощью этой системы вы можете регистрировать и отслеживать ошибки, исходя из сроков их исправления, степени их серьезности и даже индивидуально настроенных полей и статусов.
- Индивидуально настраиваемая панель наблюдения. Создатели Zoho понимают, что каждый проект уникален, поэтому они снабдили эту систему панелью наблюдения, которую можно настроить под себя.
- Совместная работа. Такие функции, как Zoho Forms и Discuss, позволяют вам работать вместе со своей командой и быть в курсе, чем заняты остальные члены команды.
- Автоматизация. У Zoho есть еще одна довольно удобная функция – функция автоматизации. Она отправляет электронные письма при допущении ошибки, при оповещении о ней и при ее исправлении.
У Zoho есть бесплатная версия, в которой могут работать до 3 пользователей, а также платные версии, у которых есть пробный период.
2. monday.com
monday.com – это титулованная платформа, предназначенная для организации рабочего процесса, управления взаимодействием с клиентами и разработки.
Ее платформа разработки – это комплексное решение для поддержки всего жизненного цикла продукта – от стратегии развития продукта до его выпуска и отслеживания ошибок.
Платформа является адаптируемой и была разработана с расчетом на комфорт пользователя. С ее помощью можно без проблем регистрировать ошибки, назначать им приоритеты и отслеживать ход их устранения.
Разработчики могут создавать персонифицированные планы действий и диаграммы Ганта для того, чтобы визуализировать план по малому расширению ПО и процесс отслеживания ошибок, предоставляя полный обзор всей важной информации.
Отличительные особенности:
- Централизованное отслеживание. Централизованное отслеживание ошибок помогает в совместной работе по поиску решений и в визуализации хода устранения ошибок.
- Автоматизация. Автоматизация гарантирует отсутствие ошибок. Заявки в службу поддержки и уведомления для всех заинтересованных членов команд создаются автоматически.
- Фильтрация и назначение приоритетов. Ошибки можно отслеживать с помощью тегов, фильтров и приоритетов. Вы можете проверить статус ошибки и время, которое дается на ее устранение.
- Генерация отчетов. Можно создавать интерактивные отчеты для того, чтобы анализировать такие закономерности, вновь возникающие ошибки и среднее время, необходимое для устранения ошибок. Это помогает принимать обоснованные решения.
Готовый шаблон отслеживания ошибок помогает настроить систему в соответствии с вашими требованиями за считанные минуты. У этого ПО есть 14-дневный пробный период, в течение которого вы можете попробовать с ним поработать и, таким образом, протестировать. Для компетентных некоммерческих организаций компания предлагает скидки.
3. Bugyard
Если вы владелец веб-сайта, то Bugyard может помочь вам собрать визуальную обратную связь от ваших коллег и клиентов прямо с вашего сайта. Bugyard – это одна из тех систем отслеживания ошибок, которая идеально подходит для фрилансеров, а также малых и средних компаний.
Отличительные особенности:
- Визуальная обратная связь. Bugyard не просто собирает обратную связь от ваших клиентов, но и делает снимки экрана вашей веб-страницы так, как ее видят конечные пользователи.
- Можно использовать на протяжении всего цикла. Bugyard будет вашим помощником в отслеживании ошибок на протяжении всего процесса разработки, а также при запуске вашего веб-сайта.
- Сбор важных метаданных. Снимки экрана будут содержать все необходимые метаданные технического характера, то есть название браузера и операционной системы, разрешение и размер экрана.
- Интеграция со сторонними инструментами. Вы можете использовать Bugyard совместно с другими приложениями, например, Zendesk, Freshdesk, Trello, Gmail и Slack.
У Bugyard есть несколько разных версий, которые подойдут как фрилансерам, так и командам и организациям.
4. BugHerd
BugHerd – это система управления проектами и отслеживания ошибок, предназначенная для проектировщиков и разработчиков. Платформа оснащена интуитивно понятным интерфейсом, есть огромное количество обучающих видео по этой платформе, так что она довольно проста в использовании.
Отличительные особенности:
- Автоматизация. У BugHerd есть много разных автоматизированных инструментов, с помощью которых можно собирать данные технического характера.
- Генерация отчетов в режиме реального времени. Благодаря функциями записи экрана и комментирования, команда разработчиков может получать отчеты в режиме реального времени.
- Панель управления проектами. BugHerd оснащена канбан-доской, где менеджеры проектов могут закреплять за разработчиками определенные задачи.
- Неограниченное количество участников. Функция неограниченного количества гостей и проектов позволяет разработчикам приглашать для проверки кода столько людей, сколько им нужно.
Ценник на BugHerd начинается с 33 долларов в месяц, но у нее есть 14-дневный бесплатный пробный период.
5. Marker.io
Marker.io – это инструмент, который генерирует визуальные отчеты об ошибках. Он подходит для команд и организаций, занимающихся разработкой программного обеспечения. У этого инструмента есть мини-приложение для веб-сайтов, с помощью которого разработчики могут собирать обратную связь через метаданные технического характера, снимки экрана и комментарии.
Отличительные особенности:
- Обратная связь в режиме реального времени. Marker.io записывает видео экрана, делает снимки и собирает комментарии.
- Инструменты для совместной работы. С помощью этой платформы команда разработчиков может работать вместе и получать информацию друг от друга.
- Автоматизация. Исходя из стадии ошибки, инструмент отправляет автоматические электронные письма.
- Интеграция со сторонними инструментами. Вы можете использовать Marker.io вместе со своими инструментами управления проектами и содержимым, например, Teamwork, Shortcut, Notion, Trello, Asana, ClickUp, Wrike, monday.com, WordPress, Jira, GitHub и GitLab.
Минимальная цена для данного инструмента составляет 49 долларов в месяц. Однако у него есть 15-дневный бесплатный пробный период. Кроме того, если вы собираетесь оплатить годовое пользование, то можете получить скидку 20%.
6. DoneDone
DoneDone – это одна из самых старых систем отслеживания ошибок. Она была запущена в 2009 году. Современный подход этой системы позволяет с легкостью производить отслеживание ошибок и предоставлять исправления в режиме реального времени.
Отличительные особенности:
- Генерация отчетов в режиме реального времени. Эта система моментально генерирует отчеты, которые помогут вам в процессе принятия решений.
- Шаблоны для отслеживания ошибок. Если вы не уверены в том, как правильно запускать процесс отслеживания ошибок, вы можете настроить готовые шаблоны.
- Автоматизация. Система отправляет обновления статуса по указанным электронным адресам.
- Интеграция со сторонними инструментами. Вы можете использовать эту систему совместно с Basecamp, HipChat и GitHub.
Ценник на данную систему начинается с 4 долларов в месяц. Кроме того, у нее есть бесплатный пробный период.
7. MantisBT
MantisBT – это система отслеживания ошибок с открытым исходным кодом, которая предназначена для разработчиков ПО. Этот инструмент сочетает в себе мощь и простоту, и с его помощью пользователи могут приступить к работе за считанные минуты и работать над различными проектами совместно с другими членами команды.
Отличительные особенности:
- Отчеты и обратная связь пользователей. У него есть встраиваемый в приложение метод генерации отчетов об ошибках.
- Отчеты и комментарии команды. С помощью этого инструмента команда разработчиков может собирать отчеты и комментарии.
- Мониторинг ошибок. Разработчики могут без проблем использовать аналитику и отчеты об истории ошибок.
- Отчеты и обратная связь тестировщика. С помощью этого инструмента тестировщики бета-версий могут оставлять обратную связь до того, как новые функции станут доступны для пользователей.
У MantisBT есть бесплатный пробный период, после которого стоимость платной версии будет составлять не мене 4,95 долларов в месяц.
8. Disbug
Disbug – это инструмент, с помощью которого пользователи могут находить и отслеживать ошибки через записи и снимки экрана, консольные и сетевые журналы.
Отличительные особенности:
- «В один клик». Вы можете без проблем обосновать и прокомментировать проблему/ошибку одним нажатием кнопки.
- Интеграция со сторонними инструментами. Для более эффективного мониторинга и генерации отчетов Disbug можно использовать с такими инструментами, как Jira и Trello.
- Совместная работа. Disbug дает вам возможность совместной работы, а значит, вы можете приобщить к работе над проектом других разработчиков.
У Disbug есть разные версии: для новичков, организаций, бизнес-предприятий и даже индивидуальные версии для крупных предприятий.
9. Ruttl
Ruttl – это средство обратной связи для веб-сайтов. С его помощью пользователи могут редактировать действующие веб-сайты, оставлять по ходу дела комментарии, писать гостевые комментарии, быстро загружать изображения и делиться ссылками с клиентами.
Отличительные особенности:
- Обнаружение проблем/ошибок. У Ruttl есть встроенные шаблоны, с помощью которых вы можете собирать данные об ошибках.
- Совместная работа. Ruttl – это инструмент, который идеально подходит для разработчиков и проектировщиков, которые хотят работать вместе над одним проектом.
- Уведомления/оповещения. Инструмент фиксирует весь жизненный цикл ошибок и отправляет уведомления по электронной почте.
- Интеграция со сторонними инструментами. Ruttl можно использовать вместе со Slack, Trello и Jira Board.
У Ruttl есть бесплатный пробный период, стоимость платной версии начинается с 13 долларов в месяц.
10. Backlog
Разработчики и тимлиды используют Backlog (от онлайн-проекта Nulab) для того, чтобы собирать данные, назначать приоритеты ошибкам и распределять задачи между разными членами команды.
Отличительные особенности:
- Персонифицируемые шаблоны. У Backlog есть шаблоны, которые вы можете настроить под ваши потребности.
- Фиксирует все данные. Когда вы используете Backlog, важна каждая деталь. Он фиксирует такие данные, как запросы на включение изменений, слияния изменений, сборки, обновления и т.д.
- Git и SVN. У инструмента есть встроенные репозитории, которые упрощают управление кодом.
- Коллективный доступ к файлам. Вы можете хранить все рабочие файлы в одном месте.
У Backlog есть бесплатная и платная версии. Платная версия стоит от 35 долларов в месяц.
11. Bird Eats Bug
Bird Eatы Bug – это инструмент, предназначенный для руководителей проектов, разработчиков ПО, QA-специалистов и проектировщиков. У этого инструмента есть расширение для Chrome, которое отображает ошибки сети и JavaScript в режиме реального времени.
Отличительные особенности:
- Легко сделать снимок экрана. С помощью одного нажатия кнопки вы можете сделать снимок экрана, который зафиксирует в отчете ошибку здесь и сейчас.
- Веб-SDK. У разработчиков есть возможность установить веб-версию SDK (Software Development Kit – пакет средств разработки ПО), который будет вести подробный отчет об ошибках.
- Интеграция со сторонними инструментами. Вы можете использовать этот инструмент с различными другими инструментами, например, GitHub, Trello, Zapier, Slack и Jira Cloud.
У Bird Eats Bug есть как бесплатная, так и платная версии. Стоимость последней составляет минимум 40 долларов в месяц (если вы будете оплачивать за год).
Заключение
Неважно, создаете ли вы свой веб-сайт для портфолио или веб-приложение для клиентов, если вы хотите, чтобы вас считали хорошим разработчиком, вам следует уделять больше внимания такому процессу, как отслеживание ошибок. Уберите из своей жизни все эти электронные таблицы и выберите любой из инструментов выше, который будет полностью вас устраивать!