Mockito.mock(SomeClass) 和 @Mock 注释有什么区别?

时间:2022-11-02
本文介绍了Mockito.mock(SomeClass) 和 @Mock 注释有什么区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

Mockito.mock(Class<T> classToMock)方法和@Mock注解有什么区别?它们是一样的吗?

What is the difference between Mockito.mock(Class<T> classToMock) method and the @Mock annotation? Are they the same?

例如,是这样的:

private TestClass test = Mockito.mock(TestClass.class);

同:

@Mock
private TestClass test;

推荐答案

它们都达到了相同的结果.使用注解 (@Mock) 通常被认为是更干净",因为您不会用看起来都一样的样板赋值来填充代码.

They both achieve the same result. Using an annotation (@Mock) is usually considered "cleaner", as you don't fill up your code with boilerplate assignments that all look the same.

请注意,为了使用 @Mock 注释,您的测试类应使用 @RunWith(MockitoJUnitRunner.class) 注释或包含对 的调用MockitoAnnotations.initMocks(this) 在其 @Before 方法中.

Note that in order to use the @Mock annotation, your test class should be annotated with @RunWith(MockitoJUnitRunner.class) or contain a call to MockitoAnnotations.initMocks(this) in its @Before method.

这篇关于Mockito.mock(SomeClass) 和 @Mock 注释有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

上一条:静态方法是 DI 反模式吗? 下一条:Mockito Spy - 调用构造函数之前的存根

相关文章

最新文章