Разработка через тестирование в ООП

Я недавно начал изучать разработку, основанную на тестировании, а именно MXUnit, и мне нравится идея, стоящая за этим. Я могу понять идею использования TDD с автономными CFC, но когда дело доходит до использования его с основанными на OOP Frameworks, в первую очередь FW/1 и CFWheels, я не уверен, как использовать MXUnit с CFC фреймворка (контроллеры в FW/1). и модели и контроллеры в колесах CFW).

Кто-нибудь знает, где я могу найти некоторые ресурсы по использованию MXUnit с Frameworks?

1 ответ

Решение

Я могу говорить только о F/W 1, так как я не использовал CFWheels (некоторая информация здесь в другом вопросе SO), но, по моему мнению, модульное тестирование инфраструктуры может быть упрощено при правильном использовании сервисного уровня.

Идея состоит в том, чтобы протестировать объекты сервисного слоя с помощью MXUnit и оставить контроллеры инфраструктуры (например, в FW/1) очень легкими. По сути, контроллеры просто передают параметры на сервисный уровень, возвращая ответ и отображая представление.

Причина заключается в том, что фреймворк является наименее вероятным местом, где вы будете вводить ошибки, поэтому сконцентрируйте свое тестирование на объекте службы, то есть на основной бизнес-логике вашего приложения.

Интересно, что в других средах, отличных от ColdFusion (таких как Grails), среда не тестируется, создаются тесты для вашей модели ("доменные классы" в граалях, которые моделируют данные) и ваших сервисных объектов, но предполагается, что среда работает нормально, Идея снова и снова заключается в том, чтобы уберечь логику от ваших контроллеров и протестировать уровень обслуживания и модель домена.

Я надеюсь, что это поможет в некотором роде.

Другие вопросы по тегам