第二个类有一个简单的方法,它只返回一个字符串,该字符串作为参数传递给该方法
public class Second{
public String show(String y ){
return y
}
}
现在有一个Sample类,我在Sample Classe的方法中调用了这个show方法并返回字符串。
public class Sample{
public String sampleMethod(){
Second s = new Second();
return s.show("This should not be displayed");
}
}
现在我正在测试示例类,因此我创建了一个名为SampleTest的文件
public class SampleTest{
@Mock
Second s;
@InjectMocks
Sample s = new Sample();
@Before
public void setUp(){
MockitoAnnotations.initMocks(this);
when(s.show(any(String.class))).thenReturn("This should be displayed");
}
@Test
public void sampleMethodTest(){
assertEquals("This should be displayed", s.sampleMethod());
}
}
sample
与second
紧密耦合,方法是在测试中的方法中创建sample。
鉴于目前所述的限制,
我只需要用mockito而不是powermockito
public class Sample {
private final Second second;
public Sample(Second second) {
this.second = second;
}
public String sampleMethod(){
return s.show("This should not be displayed");
}
}
public class SampleTest {
@Mock
Second second;
@InjectMocks
Sample sample; //second will be injected here
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
}
@Test
public void sampleMethodTest() {
//Arrange
String expected = "This should be displayed";
when(second.show(any(String.class))).thenReturn(expected);
//Act
String actual = sample.sampleMethod();
//Assert
assertEquals(expected, actual);
}
}
您好,我对Junit和Mockito的单元测试相当陌生。我认为我对这些原则有一个相当合理的理解,但我似乎找不到任何解释来解释我特别想在网上测试什么。 我想测试一个方法,它调用其他几个方法(void和non-void),该方法还实例化了方法体中的对象。不幸的是,我不能分享代码,因为它不是我的,但这里有一个通用格式: 目前我只关心测试method_1,我不能直接测试,因为它是一个私有方法,所以我必须通
在尝试模拟InetAddress中的静态方法时,我遇到了奇怪的问题。我成功地能够为许多其他类模拟静态方法,并且一切正常,但InetAddress显示不同的行为。我使用的是JUnit 4. x、Mockito 1.9.5 下面给出了使用Mockito和PowerMock以及InetAddress模拟的测试- 当我将下面给出的方法放入某个实用程序InetAddress中时。getLocalHost()
我想通过ts-Mockito@2.5.0创建一个类的模拟对象,但我无法正确设置它。 以下是设计的测试用例: 正如测试用例所暗示的,我希望从我的模拟中返回“I AM mocked”的值。 我应该如何设置模拟,使其按预期工作? 旁白:这个测试用例只是为了展示我正在经历的奇怪行为。这不是我真正的测试。我想在不同服务的单元测试中使用模拟。)
我的测试存根是 我在这里做错了什么?
使用mockito模拟一个方法会确保永远不会调用被模拟的方法吗?我有一个主类,它包含一些我想为其编写单元测试的代码,还有一个单元测试类MainTest,它包含主类的单元测试。 eg: 源类: JUnit测试(使用mockito) 这项测试失败了。为什么?
问题内容: 我想编写一个JUnit测试来验证以下代码是否使用BufferedInputStream: (FilterFactory是一个接口。) 到目前为止,我的测试如下: 调用PowerMockito.spy会引发以下消息异常: 我应该使用什么代替PowerMocktio.spy来设置对whenNew的调用? 问题答案: 信息很明显:您不能模拟不可见和最终类。简短答案: 创建一个 匿名 类 的