0
public class A { 
 public void m1(obj o){
   m2(params);
 }
 private void m2(params){
   String s;
   //some actions with String S
   m3(s);
 }
 private void m3(String s){
   m4(s);
 }
 private void m4(String s){

   //some actions with s
 }
}

所以我需要以某种方式获取 m4() 作为参数接收的 String s,我需要捕获该参数,以便我可以在 m1() 中放置一个不同的 obj ,它会在 m2() 中创建一个不同的字符串,所以我可以比较他们使用 EasyMock 或者可能有一种方法可以不使用 EasyMock。我被困在这里,我不知道该怎么做。

a.m1(obj);

这是我的班级的用法,所以它调用了由私人关闭的连锁反应。我希望我能很好地解释我的问题。

4

1 回答 1

0

如果你想测试这个方法,你可以考虑把它设为 public/protected/package local。然后,您将能够在要测试的子类中模拟或重载它。

于 2013-10-23T17:10:58.980 回答