Java 如何使用junit从另一个方法中测试方法调用

Java 如何使用junit从另一个方法中测试方法调用,java,junit,mocking,mockito,Java,Junit,Mocking,Mockito,我是java单元测试新手,所以如果这是一个愚蠢的问题,请原谅。我有一个类似下面的方法。我要做的是验证是否正在调用此方法,并检查传递的参数是否为null以及是否也正在调用。我如何在junit/mockito中执行此操作 public <return type> callMe(Object objectA) { if(objectA.name != null && objectA.age != null) { someOtherMethod(objectA.name,

我是java单元测试新手,所以如果这是一个愚蠢的问题,请原谅。我有一个类似下面的方法。我要做的是验证是否正在调用此方法,并检查传递的参数是否为null以及是否也正在调用。我如何在junit/mockito中执行此操作

public <return type> callMe(Object objectA) {

if(objectA.name != null && objectA.age != null) {
someOtherMethod(objectA.name, objectA.age)

  }
}
public callMe(对象objectA){
if(objectA.name!=null&&objectA.age!=null){
someOtherMethod(objectA.name、objectA.age)
}
}

我认为另一种方法是使用
@Spy
注释在第一个方法中执行该方法,然后检查结果。

您还可以使用
Mockito.veify(…)
检查是否调用了该方法。

调用
someOtherMethod
是否会产生任何可以从被测类外部观察到的效果?如果是-那么您应该声明公开可见的效果,而不是调用了
someOtherMethod
,这是一个实现细节。那么我是否需要创建一个
CallMe CallMe=new CallMe
,然后执行类似
CallMe.someOtherMethod
的操作?