小编gul*_*emo的帖子

Mockito如何使用输出参数模拟void方法?

我有一个void方法"functionVoid"通知参数.

public class MyMotherClass {
 @Inject
 MyClass2 myClass2

 public String motherFunction(){
  ....
  String test = "";
  myClass2.functionVoid(test);

  if (test.equals("")) {
      IllegalArgumentException ile = new IllegalArgumentException(
      "Argument is not valid");
      logger.throwing(ile);
      throw ile;
  }
  ....
 }
}

public class MyClass2 {

public void functionVoid(String output_value)
{ ....
 output_value = "test";

 ....
 }
}
Run Code Online (Sandbox Code Playgroud)

如何在JUnit方法中模拟我的方法"motherFunction"?在我的例子中,"test"变量仍然是空的.

@RunWith(MockitoJUnitRunner.class)
public class MyMotherClassTest {

 @Mock
 private MyClass2 myClass2 ;

 @InjectMock
 private final MyMotherClass myMotherClass = new MyMotherClass ();

 @Test
 public void test(){

  myMotherClass.motherFunction();     

 }
}
Run Code Online (Sandbox Code Playgroud)

java mockito

9
推荐指数
3
解决办法
3万
查看次数

标签 统计

java ×1

mockito ×1