Тщательное тестирование приложений ASP.Net MVC 4

Я понимаю, что это дубликат примерно 20 разных сообщений, но ни один из них не относится к MVC4, и ни один из тех, что я видел, действительно не ответил на все мои вопросы . Пока что мой первый набег на мир TDD был, мягко говоря, разочаровывающим. Большая часть того, что я пытался сделать, кажется несовместимым с MVC 4 или почти невозможным без использования плохо документированных сторонних библиотек, которые я еще не совсем понимаю.

Что я хочу сделать, так это написать тесты, которые будут проверять мои действия контроллера, модель, которую они передают, и представление , в которое действие отправляет модель. Я хочу проверить, существует ли представление, я хочу проверить, является ли переданная модель правильным типом для представления, я хотел бы каким-то образом проверить, правильно ли оно обрабатывается. Я также хочу иметь возможность тестировать свои маршруты. И тестирование фильтров аутентификации?

Мне нужен способ модульного тестирования ASP.Net MVC, который мало что оставит на волю случая.

Тестирование вывода модели Action кажется достаточно простым, но тестирование представлений было почти невозможным.

Итак, вот мой список вопросов:

  1. Как только я протестирую действие и получу результат действия, как мне проверить, существует ли желаемое представление?
  2. Как мне проверить свои маршруты?
  3. Как я могу проверить, чтобы убедиться, что мои представления обрабатываются правильно?
  4. Что на самом деле является «лучшей практикой» для ТЩАТЕЛЬНОГО модульного тестирования ASP.Net MVC 4?
  5. Как выполнить проверку подлинности форм модульного теста?
  6. Как можно ли использовать фильтры действий для модульного тестирования?

Я бы предпочел использовать встроенные тестовые проекты Visual Studio, но если мне нужно использовать NUnit, я должен это сделать. Мне просто нужно убедиться, что все сделано правильно.

Заранее благодарю вас за ваши ответы.

РЕДАКТИРОВАТЬ: Мне также не удалось заставить NUnit работать с моим приложением MVC4 из-за несовместимости с версией .NET, в которой была скомпилирована одна из сборок.

60
задан Ciro Santilli 新疆改造中心法轮功六四事件 21 August 2013 в 07:31
поделиться