Private oder endgültige Methoden/Klassen mit Mockito verspotten
Bei der Arbeit mit Tests ist das Verspotten von endgültigen Klassen oder Methoden eine häufige Herausforderung. Mockito, ein beliebtes Mocking-Framework, hatte in dieser Hinsicht traditionell Einschränkungen. Mit der Veröffentlichung von Mockito v2 wurde dieses Hindernis jedoch überwunden.
Um eine Abschlussklasse mit Mockito v2 zu simulieren, befolgen Sie diese Schritte:
Einschließen Mockito v2 in Gradle:
testImplementation 'org.mockito:mockito-inline:2.13.0'
Verspotten Sie die Klasse direkt:
// Given FinalClass finalClass = mock(FinalClass.class);
Beachten Sie, dass Sie das @ nicht deklarieren müssen Scheinanmerkung, wie im älteren Mockito Versionen.
Einschränkungen von Mockito v1:
Wie in den Mockito-FAQ erwähnt, weist Mockito v1 Einschränkungen auf, wenn es darum geht, Abschlussklassen zu verspotten. Dies liegt daran, dass endgültige Klassen während der Laufzeit nicht dynamisch generiert werden können, eine Voraussetzung für das Mocking.
What are the limitations of Mockito ... Cannot mock final classes
Das obige ist der detaillierte Inhalt vonWie kann ich Abschlussklassen und -methoden mit Mockito simulieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!