Java TDD在MVC中的应用

Java TDD在MVC中的应用,java,unit-testing,model-view-controller,tdd,Java,Unit Testing,Model View Controller,Tdd,我正在努力寻找MVC和TDD的好内容。我只是想学习如何有效地为MVC设计模式编写单元测试。如果您有任何见解或有用资源的链接,我将不胜感激。MVC的哪些部分最适合进行单元测试?对视图进行单元测试有什么好处吗?如果有,是如何实现的?RubyonRails同时具备MVC和单元测试功能(我知道你的问题是关于Java的,但在较高层次上,方法应该基本相同) 单元测试主要是测试模型(MVC中的M) 然后是测试控制器(C)的功能测试 如果您想测试V,那么像这样的工具是一个非常好的选择 这是一篇关于Rails中测

我正在努力寻找MVC和TDD的好内容。我只是想学习如何有效地为MVC设计模式编写单元测试。如果您有任何见解或有用资源的链接,我将不胜感激。MVC的哪些部分最适合进行单元测试?对视图进行单元测试有什么好处吗?如果有,是如何实现的?

RubyonRails同时具备MVC和单元测试功能(我知道你的问题是关于Java的,但在较高层次上,方法应该基本相同)

单元测试主要是测试模型(MVC中的M)

然后是测试控制器(C)的功能测试

如果您想测试V,那么像这样的工具是一个非常好的选择


这是一篇关于Rails中测试的好文章:

最好将单元测试应用于所有三个方面——模型、视图和控制器。这对于模型和控制器来说很简单,但对于视图部分来说可能很困难。MVP模式使这变得更容易,因为MVP中的视图通常比MVC中的视图薄

为了补充单元测试,您需要一些集成测试——这是一个广泛的主题,涵盖了从测试少数对象的交互到测试完整系统的所有内容。自动化验收测试也会有所帮助

至于是否对M、V或C中的任何一个进行单元测试:它归结为实现所需交付的质量水平所涉及的经济性。通常,从长远来看(想想回归测试),测试每个部件单元要比手动重新测试所有组件便宜。事实上,远比这便宜。想想手动测试和重新测试数百个类所涉及的成本,如果您可以编写单元测试的话


特别是对于视图,仍然考虑经济性和质量,如果该层非常薄,可能是Selenium或类似工具可以为您提供测试视图所需的自动化。

谢谢Dan。我来看看硒。