Разработка через тестирование в ООП - PullRequest
4 голосов
/ 27 февраля 2011

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

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

1 Ответ

3 голосов
/ 27 февраля 2011

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

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

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

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

Надеюсь, это поможет каким-то образом.

...