我开始测试应用程序,我想创建几个测试来学习Spring中的Mockito。我一直在阅读一些信息,但我有一些普遍的疑虑,我想问。
感谢。
答案 0 :(得分:14)
@RunWith(MockitoJUnitRunner.class)
通过此声明,您可以编写单元测试。单元测试正在运行一个模拟所有依赖项的类。通常,您将在测试用例中注入如此声明的模拟依赖项:
@Mock
private YourDependency yourDependencyMock;
@RunWith(SpringJUnit4ClassRunner.class)
Spring runner适用于集成测试(组件测试?)在这种类型的测试中,您正在练习一大堆类,换句话说,您正在测试一个具有实际依赖性的单个类(使用实际服务,DAO,内存数据库等测试控制器)
您应该在应用程序中同时拥有这两个类别。虽然建议有更多的单元测试和少量的烟雾整合测试,但我经常发现自己更有信心只编写集成测试。
至于你的第二个问题,你应该:
单元测试与模拟所有其他类分开
集成测试用于整个单个CRUD操作。例如,创建一个运行控制器,服务,DAO和内存数据库的用户。