Как сделать сайт ASP.NET MVC таким же тестируемым, как сайт ASP.NET Web Forms? - PullRequest
3 голосов
/ 02 апреля 2010

также, какой сегодня день и почему у меня в качестве аватара уродливый единорог; -)

Ответы [ 2 ]

6 голосов
/ 02 апреля 2010

Во-первых, вы должны везде использовать запечатанные классы и синглтоны - ни один из этих классов-оберток с виртуальными методами, которые можно макетировать, или что-то еще. Далее, и это важно, вы должны использовать Reponse.Write вместо возврата представлений. Это также помогает сериализовать содержимое всех параметров формы, зашифровать их и сохранить их в скрытом вводе на странице, а затем всегда проверять новые параметры по сравнению со старыми, чтобы увидеть, что изменилось. Используя этот способ, вы можете генерировать такие вещи, которые называются «событиями» - они похожи на нажатия кнопок и выбор в Windows Forms. Это гораздо проще для понимания и моделирования в ваших модульных тестах.

0 голосов
/ 02 апреля 2010

У вас есть единорог, потому что сегодня апрельский день дураков, а Джефф - любитель подобных вещей.

Некоторые утверждают, что сайт MVC более тестируем, чем сайт ASP.NET Forms. Вы делаете это тестируемым, добавляя тесты, я думаю.

...