Unit testing 面向对象框架中的测试驱动开发

Unit testing 面向对象框架中的测试驱动开发,unit-testing,frameworks,coldfusion,cfwheels,Unit Testing,Frameworks,Coldfusion,Cfwheels,我最近开始学习测试驱动开发,即MXUnit,我喜欢它背后的想法。我可以理解将TDD与独立CFC一起使用的想法,但当涉及到将其与基于OOP的框架(主要是FW/1和CFWheels)一起使用时,我不确定如何将MXUnit与框架CFC(FW/1中的控制器以及CFWheels中的模型和控制器)一起使用 有人知道我在哪里可以找到关于使用MXUnit和框架的一些资源吗?我在这里只能谈论F/W 1,因为我没有使用CFWheels(另一个SO问题中的一些信息),但是在我看来,通过正确使用服务层可以简化框架单元测

我最近开始学习测试驱动开发,即MXUnit,我喜欢它背后的想法。我可以理解将TDD与独立CFC一起使用的想法,但当涉及到将其与基于OOP的框架(主要是FW/1和CFWheels)一起使用时,我不确定如何将MXUnit与框架CFC(FW/1中的控制器以及CFWheels中的模型和控制器)一起使用


有人知道我在哪里可以找到关于使用MXUnit和框架的一些资源吗?

我在这里只能谈论F/W 1,因为我没有使用CFWheels(另一个SO问题中的一些信息),但是在我看来,通过正确使用服务层可以简化框架单元测试

其思想是使用MXUnit测试服务层对象,并使框架控制器(例如在FW/1中)非常轻量级。实际上,控制器只是将参数传递给服务层,返回响应并显示视图

理由是,框架是最不可能引入错误的地方——因此,将测试集中在服务对象上,即应用程序的核心业务逻辑

有趣的是,在其他非ColdFusion框架(例如)中,框架没有经过测试,测试是为您的模型(“grails中对数据进行建模的域类”)和您的服务对象创建的,但假设框架工作正常。这里的想法——同样——是将逻辑排除在控制器之外,并测试服务层和域模型


我希望这在某种程度上有所帮助

这确实有帮助。非常感谢。对于FW/1,我有点假设服务应该处理所有需要测试的东西。不过,CFWheels使用框架来处理几乎所有事情。它有一个内置的ORM来处理数据库内容,甚至视图也大多是由函数构建的,比如表单助手函数。