我正在尝试为我的android应用程序的验证器编写Unit Test。验证器接受EditText作为参数,因此我需要模拟它。但是,模拟不起作用,强制Test在调用when()方法时崩溃,并出现以下异常:
org.mockito.exceptions.misusing.MissingMethodInvocationException:
when() requires an argument which has to be 'a method call on a mock'.
For example:
when(mock.getArticles()).thenReturn
我用了莫基托很久了。对于Mockito 4.7.0版本(例如,3.12.4版本),代码如下:
A a = mock(A.class);
when(a.doX()).thenReturn("X");
导致第二行中的java.lang.NullPointerException。
打印变量a的内容时
System.out.println(a);
我还有"java.lang.NullPointerException“。
对于任何其他类,Mockito.mock和Mockito.when都能很好地工作,如果我打印其他类实例b的内容,就会得到"Mock For B,hash
我试图使用when(),thenReturn()来测试if条件,但是当我运行我的测试用例时,它告诉我缺少方法调用,即使我已经模拟了实现该方法的类。
这是我试图模拟的if条件。
if(request.getProcessType() == IPRequest.IPREQUEST_TYPE_TOMO_RECON)//IPREQUEST_TYPE_TOMO_RECON=9, this is the condition I am trying to test
{
params.setTubeAngle(accessor); //I am verifying