gpt4 book ai didi

java - 使用 Mockito 进行单元测试需要哪些导入?

转载 作者:行者123 更新时间:2023-11-29 09:09:28 26 4
gpt4 key购买 nike

我使用的是 Mockito 版本 1.9.0。我环顾四周,发现大多数示例都忽略了导入列表,而其他示例彼此之间非常不一致。我收到一些注释的“错误:找不到符号”。我可能将 junit 语法与 Mockito 语法混合在一起,但我不确定。

@RunWith(MockitoJUnitRunner.class)
public class SomeControllerTest {
@Mock
private SomeServiceImpl someService;

@InjectMocks
private SomeController someController;

@Before
public void setUp() throws Exception {
...
}

@Test
public void testSomething() throws SomeException {
...
}
}

编辑

这是我目前正在导入的内容:

import org.mockito.*;
import org.mockito.runners.MockitoJUnitRunner;
import org.junit.runner.RunWith;

import static org.junit.Assert.assertEquals;
import static org.mockito.Mockito.*;
import static org.junit.Assert.*;

最佳答案

通常你没问题:

import static org.mockito.Mockito.*;

在今天的 IDE 中,它们提供了自动完成功能,并且会查找上层类。例如 Mockito 类就是这样设计的,如果您尝试使用 Mockito eq 匹配器,IntelliJ 将导入 org.mockito.Matchers.eq

以同样的方式,您可以使用 given 系列方法 ti 在 stub 时使用 BDD 样式而不是 when 系列方法,它将导入 org.mockito。 BDDMockito 扩展了 Mockito 类。

注解都在org.mockito

import org.mockito.Captor;
import org.mockito.InjectMocks;
import org.mockito.Mock;

出于某些关于代码组织的原因,其他内容可能会在其他地方找到,例如:

import org.mockito.runners.MockitoJUnitRunner;

编辑:在 Mockito 2.x 中,org.mockito.runners.MockitoJUnitRunner 已弃用,JUnit 相关代码已移至 org.mockito.junit ,因此导入应替换为:

import org.mockito.junit.MockitoJUnitRunner;

新的 MockitoRule 也是如此。

import org.mockito.junit.MockitoRule;
import org.mockito.junit.MockitoJunit;

但找到它应该不是问题。

希望对您有所帮助!

关于java - 使用 Mockito 进行单元测试需要哪些导入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13162810/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com