предупреждения:: предупредите и категории FATAL в Perl

  1. не пишут тесты ginormous. , Поскольку 'единица' в 'модульном тесте' предлагает, сделайте, каждый максимально атомарный и изолировал . Если Вы должны, создать предварительные условия с помощью фиктивных объектов, вместо того, чтобы воссоздать слишком много среды типичного пользователя вручную.
  2. не тестируют вещи, это, очевидно, работает. Стараются не тестировать классы от стороннего поставщика, особенно тот, предоставляющий базовые API платформы, в которой Вы кодируете. Например, не тестируйте добавление объекта к классу Хеш-таблицы поставщика.
  3. Рассматривают использование инструмента покрытия кода , такого как NCover, чтобы помочь обнаружить пограничные случаи, которые необходимо все же протестировать.
  4. Попытка, пишущий тест прежде реализация. Думают о тесте как о большем количестве спецификации, которой будет придерживаться Ваша реализация. Cf. также управляемая поведением разработка, более определенное ответвление разработки через тестирование.
  5. Быть последовательным. , Если Вы только тесты записи на часть Вашего кода, это едва полезно. Если Вы работаете в команде, и некоторые или все другие не делают тестов записи, это не очень полезно также. Убедите себя и всех остальных важности (и экономящий время свойства) тестирования, или не беспокойтесь.
8
задан Josh McAdams 20 October 2009 в 04:14
поделиться

1 ответ

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

Warnings начинает поиск соответствующего кадра стека для получения битов предупреждения в warnings :: warn вызывающего абонента . Идея состоит в том, что вы пишете какой-то модуль и используете warnings :: warn или warnings :: warnif в своих функциях, и независимо от того, выводится ли предупреждение (или фатально) зависит от параметра использовать предупреждения в области видимости кода, который использует ваш модуль . Там'

12
ответ дан 5 December 2019 в 14:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: