Тест на отладку, предложения необходимы - PullRequest
2 голосов
/ 05 мая 2010

У меня тест на отладку, как часть интервью ... Я подумал, может ли кто-нибудь помочь с этим подходом, когда я столкнулся с большой кодовой базой и должен найти ошибки внутри нее в течение часа или двух. Это будет основанное на Java приложение (я полагаю) на Eclipse 3.2 +

Ответы [ 4 ]

2 голосов
/ 05 мая 2010

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

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

2 голосов
/ 05 мая 2010

Ответ, который, вероятно, ожидает интервьюер, звучит так: «Какова ваша общая стратегия?» Вам лучше иметь подход, который имеет смысл для него или нее. Вот общий подход, который я рекомендую для отладки (независимо от того, используется ли он для теста):

  1. Воссоздайте ошибку, документируйте дополнительные результаты по мере продвижения.
  2. Бонусные баллы за написание юнит-теста для автоматического воссоздания ошибки.
  3. Категоризация ошибки - это сбой или неправильное поведение? Ваш анализ, скорее всего, будет другим.
  4. Поднимите уровень отладки / ведения журнала настолько подробно, насколько это возможно.
  5. Найдите файлы журналов / артефакты, которые могло сгенерировать приложение, чтобы точно определить неисправность.
  6. Выполните начальный просмотр вероятного кода в поисках чего-нибудь подозрительного.
  7. Используйте подход «разделяй и властвуй». Используйте грубый двоичный поиск, чтобы определить, где работает код, а где нет. Возможно, используйте точки останова или выведите операторы.
  8. После того, как вы его найдете, добавьте блок тестов для явного сужения.
  9. Добавьте документацию, объясняющую, что вы нашли, комментарии в коде модульного теста были бы отличными.
  10. Исправить ошибку. Комментарии относительно исправления также будут хорошими.
  11. ПРОВЕРЬТЕ СВОЮ ИСПРАВЛЕНИЕ. Проверьте это логичным, методическим способом (граничные условия и т. Д.)
  12. Когда закончите, попросите интервьюера сделать обзор кода вашего решения для исправления ошибки.
2 голосов
/ 05 мая 2010

Не полный ответ, но вы также можете освежить методы для удаленной отладки

alt text

Это может помочь в обнаружении ошибок, когда у вас нет полноценного проекта Eclipse, а есть только внешнее приложение (с его источниками), которое вылетает.

0 голосов
/ 06 мая 2010

Дайте мне знать, как это происходит. Звучит сложно. Я думаю, я бы сказал, убедитесь, что вы знаете, как получить трассировку стека от макушки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...