[JAVA] Org.mockito.exceptions.misusing.InvalidUseOfMatchersException in Mockito

In einem Test mit Mockito

when(hoge.fuga("aaa",0)).thenReturn(1)

Wenn du so etwas schreiben willst. Ich möchte den gleichen Rückgabewert für das zweite Argument "0" verwenden, unabhängig davon, was eingegeben wird. Daher möchte ich "anyInt ()" von "org.mockito.Matchers" verwenden, damit ich das Problem beheben kann

when(hoge.fuga("aaa",anyInt())).thenReturn(1)

Dann

org.mockito.exceptions.misusing.InvalidUseOfMatchersException: 
Invalid use of argument matchers!
5 matchers expected, 4 recorded:
//Abkürzung

This exception may occur if matchers are combined with raw values:
    //incorrect:
    someMethod(anyObject(), "raw String");
When using matchers, all arguments have to be provided by matchers.
For example:
    //correct:
    someMethod(anyObject(), eq("String by matcher"));

Ärgere dich über einen Fehler.

when(hoge.fuga(eq("aaa"),anyInt())).thenReturn(1)

Dies wird das Problem lösen.

Wenn Sie einen Matcher wie "anyInt ()" verwenden möchten, müssen Sie alle Argumente in die Matcher-Methode schreiben.

Ich habe keine Ahnung, was drinnen los ist, aber ich möchte wissen warum. .. ..

Recommended Posts

Org.mockito.exceptions.misusing.InvalidUseOfMatchersException in Mockito
Änderungen in Mockito 2
Verspotten Sie statische Methoden in Mockito 3.4
Versuchen Sie es mit Mockito