Ho una classe di test (basata su TestNG) in cui utilizzo Mockito.verify
per un oggetto spia.Ripristino di Mockito Spy
Questo funziona:
public class Program {
@Spy
private TestObject testObject;
@Test
public void test1() {
testObject.makeSth();
verify(testObject, only()).someMethodNeedToBeChecked();
}
}
Ma ecco:
public class Program {
@Spy
private TestObject testObject;
@Test
public void test1() {
testObject.makeSth();
verify(testObject, only()).someMethodNeedToBeChecked();
}
@Test
public void test2() {
// Some different scenario
testObject.makeSth();
verify(testObject, only()).someMethodNeedToBeChecked();
...
}
}
ottengo un'eccezione Mokito che ho più che un'invocazione del someMethodNeedToBeChecked
metodo. Certo che ho provato ad aggiungere Mockito.reset(testObject)
ma non mi ha aiutato affatto.
Come posso resettare un oggetto spia se devo verificare lo stesso metodo in più test?
ho fatto una domanda simile sopra a http://programmers.stackexchange.com/questions/188299/is-this-an- appropriato uso-di-mockitos metodo-reset-. Solo FYI, anche se quello relativo a un finto non è una spia. –
Dove hai tentato di aggiungere la chiamata a 'reset'? Forse modifica il tuo codice per mostrare il tuo tentativo, ma commentato? –
Ho allegato solo un esempio di prototipo, reset Ho provato a fare in @BeforeMethod \ @BeforeClass, lo stesso con @After, anche prima della verifica - non ha funzionato. Come ho capito è un problema solo con spie e reset è solo per gli oggetti finti. –