Verwenden Sie Mockito für die selektive Methodenverspottung
Mockito bietet Flexibilität beim Verspotten bestimmter Methoden innerhalb einer Klasse. Durch die Nutzung partieller Mocks können Entwickler auswählen, welche Methoden überschrieben werden sollen, während andere intakt bleiben.
Stellen Sie sich beispielsweise eine Stock-Klasse mit den Methoden getPrice(), getQuantity() und getValue(). Möglicherweise möchten Sie die ersten beiden Methoden für ihre Rückgabewerte verspotten, getValue() jedoch sein ursprüngliches Verhalten beibehalten.
Mit einem teilweisen Mockito in Mockito können Sie diese Präzision erreichen. DasStock-Objekt wird als Mock instanziiert, während für getPrice() und getQuantity() spezifische Erwartungen festgelegt werden. Hier ist ein Beispiel:
Stock stock = mock(Stock.class); when(stock.getPrice()).thenReturn(100.00); when(stock.getQuantity()).thenReturn(200);
getValue() behalten Sie die tatsächliche Implementierung bei:
when(stock.getValue()).thenCallRealMethod();
Stock stock = spy(Stock.class); when(stock.getPrice()).thenReturn(100.00); when(stock.getQuantity()).thenReturn(200);
Stock MOCK_STOCK = Mockito.mock( Stock.class, CALLS_REAL_METHODS );
getValue() sowohl von price als auch von abhängig ist Menge direkt, nicht nur auf ihre Getter.
Darüber hinaus sollten Sie darüber nachdenken, Spott gänzlich zu vermeiden, wenn möglich:Das obige ist der detaillierte Inhalt vonWie kann ich Methoden in Mockito selektiv verspotten, um sie teilweise zu verspotten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!