Да, вы можете достичь того же, используя @Enumerated(EnumType.ORDINAL)
.
См. Эти примеры.
Введение модульных тестов в процесс разработки похоже на инвестиции: необходимо поместить некоторые деньги впереди для получения прибыли позже. Управление должно быть более внимательно к этой аналогии, если Вы выполняете с ним: опишите, какие инвестиции требуются и затем устанавливают план относительно прибыли.
Например: Инвестиции:
Прибыль:
Относительно № 3, проводя время на поблочном тестировании, скорее всего, уменьшит полное время выхода на рынок. Большая статья - http://blog.scottbellware.com/2008/12/does-test-driven-development-speed-up.html
Люди слушают свои кошельки. Покажите, сколько времени можно сэкономить путем ловли ошибок вначале. Переведите это в долларовые сбережения.
Большинство менеджеров не будет видеть преимуществ поблочного тестирования, пока они не будут видеть его в действии, где это имеет смысл, таким образом, мой совет, на основе опыта, состоит в том, чтобы взять и следующие шаги:
Конечно, я не говорю, что это легко - что я имел вышеизложенный, упрощение, которое даже я борюсь с повседневным - трудно убедить всех.
Если позже Вы решаете идти дальше к другой компании, можно хотеть явно искать компанию это методы TDD.
Для меня лучшее преимущество для принятия модульного теста состоит в том, что я могу изменить свое поведение кодирования для создания его более тестируемым, в другом слове, более свободным двойным способом.
если бы Вы не можете практиковать модульный тест в своем реальном проекте из-за проблем управления, я принял бы решение практиковать на некотором маленьком игрушечном проекте, только чтобы вынудить себя получить способ написать тестируемый код даже нет НИКАКОГО модульного теста.
Мои собственные 2 цента.
Если поблочное тестирование, я предполагаю, что Вы говорите о TDD здесь, настолько важно для Вас, необходимо использовать собственное время, чтобы записать им (предположение, что у Вас есть время). Если Вы делаете, ведете учет того, сколько времени Вы на самом деле проводите запись их и после того, как они существовали для цикла выпуска, или два переходят к Вашим менеджерам с некоторыми данными.
Если ответы, которые Вы отправили, действительно, что Ваши менеджеры говорят затем, что Вы работаете на идиотов, и возможно некоторые точные данные могут поколебать их. Учитывая рынок, выход не вероятен, опция и проигрывание офисной политики не получат Вас нигде (или улучшат качество Вашего кода).
Пока Ваши менеджеры не понимают, что TDD НЕ только о предотвращении ошибок или "тестировании", они никогда не будут получать его. TDD о дизайне, и в целом кодируйте качество.
Необходимо показать им. Если бы они не могут быть убеждены затем, что я начал бы смотреть. Бесшумно ;)
Мой короткий и неполный совет был бы к:
Просто смените работу. Компания, менеджеры которой дают такие ответы, собирается перестать работать так или иначе, и скоро. Выйдите, прежде чем будет слишком поздно.
Инвертируйте поиски виновного. Сделайте официальное заявление каждым разом, когда что-то выпущено без поблочного тестирования, что оно было сделано так, и что Вы не гарантируете, что это без ошибок.
Запишите время, которое Вы проводите на задачах, разделяя устранение ошибки после отказавшего развертывания, и составляете его против (потенциального) выделения времени для записи модульных тестов.
Почему Вы только не пишете модульные тесты на свой код? Вы знаете, существуют ли некоторые другие разработчики, имеющие ту же проблему? Вероятно, они последуют Вашему примеру и запишут модульные тесты, также.
Я не думаю, что проблемой является техника или затраты для сервера интеграции. Проблемой является отношение управления к поблочному тестированию. Поэтому убедите их со всеми разработчиками.
Существует много подсказок в этом потоке (ответ Jon Limjap), пробует его!
Не продавайте управление на конкретном подходе; это просто будет трудным и действительно не собирается покупать Вас очень. Ценит ли Ваша цепочка управления протестированную единицу, кодируют, не имеет значения.
Несомненно, поблочное тестирование Ваш код обладает большим количеством преимуществ, связанных с ним, но не полагайтесь на приобретение прав управления для записи тестов. Когда люди начнут видеть результаты, они будут скапливаться к правильной Вещи.
Хорошо классический ответ состоит в том, что, чем ранее Вы ловите ошибку, тем менее дорого это для фиксации, я думаю, что большинство менеджеров может коснуться этого.
Поскольку Mark сказал, что показ чего-то конкретного является лучшим способом убедить PHBs, что что-то хорошо, поскольку они так привыкли к слушанию разговора и вероятно не знают различия между поблочным тестированием и другим тестированием.
Еще одна мысль для добавления к другим превосходным комментариям к этому потоку (многие из которых у меня есть upvoted): удостоверьтесь, что Ваше управление знает, что Поблочное тестирование очень высоко автоматизировано в этой точке. Я нахожу очень впечатляющим вытолкать NUnit на экране, нажать кнопку "Run All" и видеть десятки тестов, которым дают зеленый свет, передаваемых в секундах. Сделайте это однажды, говоря, что "это проверяет, что вся моя более старая работа все еще корректна несмотря на все мои более новые изменения", и просто можно выиграть несколько преобразований. В любом случае они начнут доверять Вам - с Вашим видимым доказательством качества - больше, чем они доверяют другим. Это может только быть хорошо для Вашей карьеры.