Зависит.
В контроллерах могут происходить проверки, перенаправление, временные сообщения и т. Д.Вы можете утверждать, что эти операции должны быть проверены так же, как и ваши модели.
С другой стороны, вы должны стремиться к мышлению ' Fat Model, Skinny Controller '.Я стараюсь, чтобы мои контролеры были настолько тупыми, насколько это возможно.Проведите несколько сквозных тестов вокруг функций, которые вас интересуют (Selenium, Cucumber и т. Д.), И они обеспечат правильность ваших контроллеров.Скажем, мы разрабатываем функцию для перечисления некоторых элементов.Если сквозной тест этой функции в порядке, контроллер в порядке.Если это сломается, вы будете знать, что вы ввели регрессию.В сочетании с этим у меня есть только тесты, которые проверяют правильность представлений и корректный ответ - перенаправление, json и т. Д. Любое больше тестов на вашем контроллере , и у вас логика не в том месте.
В ASP.NET MVC2 Стивом Сандерсоном он делает несколько замечательных замечаний по поводу приведенных выше рассуждений.Я полностью рекомендую это.Недостаток этих простых тестовых контроллеров состоит в том, что я могу легко открыть вашу кодовую базу, внести изменения и сломать ваше приложение.До тех пор, пока происходят правильные представления / ответы, приложение будет по-прежнему функционально исправным.
Я должен добавить, что тестирование службы вызывается в контроллере с правильными параметрами, что является тривиальным и быстрым, поскольку вы можетехорошо сделайте это независимо от того, тестируете ли вы свои контроллеры косвенно.Я склоняюсь к этому подходу в целом.Итак, полный ответ на ваш вопрос - да, проверь свои контроллеры;)