mockito调用get方法单元测试
时间: 2023-08-03 17:04:53 浏览: 102
假设你有一个类 `MyClass`,其中有一个方法 `doSomething`,它依赖于另一个类 `DependencyClass`,并使用了该类的 `getValue` 方法。你想要编写一个使用 Mockito 测试框架的单元测试来测试 `doSomething` 方法。
首先,你需要使用 Mockito 创建一个 `DependencyClass` 对象的 mock 实例,然后使用 `when` 方法来模拟其 `getValue` 方法的行为,并返回一个预定义的值。例如:
```java
DependencyClass mockDependency = mock(DependencyClass.class);
when(mockDependency.getValue()).thenReturn("mocked value");
```
接下来,你需要创建一个 `MyClass` 实例,并将上面创建的 mock 实例注入到它的构造函数中。然后,你可以调用 `doSomething` 方法,并断言它的行为是否符合预期。例如:
```java
MyClass myClass = new MyClass(mockDependency);
myClass.doSomething();
verify(mockDependency).getValue(); // 验证 getValue 方法是否被调用
```
完整的测试代码如下:
```java
import org.junit.Test;
import static org.mockito.Mockito.*;
public class MyClassTest {
@Test
public void testDoSomething() {
DependencyClass mockDependency = mock(DependencyClass.class);
when(mockDependency.getValue()).thenReturn("mocked value");
MyClass myClass = new MyClass(mockDependency);
myClass.doSomething();
verify(mockDependency).getValue();
}
}
```
阅读全文