gpt4 book ai didi

eclipse - 找不到模拟 assertEquals

转载 作者:行者123 更新时间:2023-12-05 06:45:49 26 4
gpt4 key购买 nike

我是 Mockito 的新手,需要为工作学习它。

我做了一个非常简单的类,它有一个返回字符串的方法。

然后我在eclipse中做了下面的测试类。

import static org.junit.Assert.*;

import org.junit.Test;
import org.mockito.Mockito;


public class No_1Test {

@Test
public void testNo_1() {
No_1 myTest = Mockito.mock(No_1.class);
Mockito.when(myTest.HelloWorld()).thenReturn("Hello World");

String result = myTest.HelloWorld();
Mockito.assertEquals("Hello World", myTest.HelloWorld());

}

}

我对目前所做的理解是:

  1. 我模拟了我的 No_1 类(class)。
  2. 我指定无论何时调用 HelloWorld() 方法,它都应返回字符串 ("Hello World")
  3. 我将 HelloWorld() 的结果存储到变量结果中(应该是“Hello World”)
  4. 我想断言它做了它应该做的事情。

问题是在 eclipse 中它说 Mockito 的 assertEquals 方法是未定义的。

谁能指出我哪里出错了。

最佳答案

您收到类似 assertEquals method is undefined for mockito 的错误,因为我们不能像在 mockito.assertEquals 中那样使用 mockito,因为在您的代码中尝试使用 junit.assertEquals()

我在 mockito 上的经验表明,你应该避免模拟同一个项目的类,我们用来模拟我们依赖于其他项目或模块的类,所以不要在你的代码中模拟 No_1 类并尝试这些代码::

import static org.junit.Assert.*;

import org.junit.Test;
import org.mockito.Mockito;

public class No_1Test {

@Test
public void testNo_1() {

Mockito.when(myTest.HelloWorld()).thenReturn("Hello World");
Junit.assertEquals("Hello World", myTest.HelloWorld());

}
}

mockito 用于模拟 java 类或方法结果,但请尝试使用 junit 进行测试,如 junit.assertequals

关于eclipse - 找不到模拟 assertEquals,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21072103/

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