Модульное тестирование подразумевает также тестирование контроллеров /представлений?

Я хочу точно понять, что означает юнит-тест.Из того, что я понял до сих пор, это подразумевает тестирование модели и всех ее открытых методов.Это правильно?А как насчет контроллеров?Подразумевает ли модульный тест тестирование контроллеров /представленийМожет ли кто-нибудь просветить меня об этом.
4 голоса | спросил never_had_a_name 15 PM000000110000000431 2010, 23:55:04

4 ответа


0
По сути, если у него нетривиальная бизнес-логика, то она должна быть проверена модулем.Когда вы тестируете контроллер, если вы уже тестировали нижние уровни, вы можете смоделировать нижние уровни, чтобы ваш тест проходил быстрее, но у всех должен быть тест, все открытые и защищенные методы, а не только публичные.ИМО.
ответил James Black 16 AM000000120000000831 2010, 00:02:08
0
Модульное тестирование как концепция существует вне MVC.Так что да, вы хотите провести модульное тестирование всего своего кода, а не только модели.
ответил bstpierre 15 PM000000110000004531 2010, 23:58:45
0
Модульное тестирование, как следует из названия, тестирует кодовый модуль.Теоретически вы можете протестировать весь код, но иногда это трудно сделать.Если контроллер должен что-то выводить в представление, вы можете проверить это.Иногда вам может понадобиться создать фиктивный объект, чтобы все было проще.Например, вы можете смоделировать DAO или HttpResponse.
ответил Daniel Moura 16 AM000000120000002531 2010, 00:05:25
0
Обычно ваша модель «тупая» в том смысле, что она не содержит никакой логики, только свойства и состояние.Таким образом, модульные тесты сосредоточены вокруг тестирования вашего репозитория и сервисов, которые взаимодействуют и используют объекты домена и (если вы их используете) объекты суммарной модели.Вы также можете проверить контроллеры, которые вызывают эти услуги для полного покрытия.Все зависит от того, какую часть проекта вы бы хотели видеть протестированным.Тестирование представлений немного сложнее, для веб-проектов .NET вы можете использовать фреймворки, такие как Selenium и Watin, которые интегрируются в фреймворки модульного тестирования.
ответил Chris S 16 AM000000120000002831 2010, 00:10:28

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

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132