我正在爲我的Spring MVC控制器編寫測試。 我得到一個org.Mockito.exception.verifications.NoInteractionWanted例外,該堆棧跟蹤:Mockito - 這裏沒有任何交互異常
無相互作用想在這裏: - >在com.test.TestInsertUtente.testInserimentoUtente(TestInsertUtente.java:124) 但發現這種互動: - >在com.test.UtenteForm.insertUtente(UtenteForm.java:149)
爲什麼?
public class TestInsertUtente {
private MockMvc mockMvc;
@Mock
private UtenteService utenteService;
@InjectMocks
private UtenteForm utenteForm;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
when(utenteService.insertUtente(isA(Utente.class))).thenReturn(new Utente("utente.test","utente","test","[email protected]","test",0));
this.mockMvc = MockMvcBuilders.standaloneSetup(utenteForm).build();
}
@Test
public void testInserimentoUtente() throws Exception {
mockMvc.perform(post("/all/utente/form/insert/${action}","resta")
.contentType(MediaType.APPLICATION_FORM_URLENCODED)
.param("utente", "utente.test")
.param("nome", "utente1")
.param("cognome", "test")
.param("email", "[email protected]")
.param("password", "test")
.param("statoRecord", "0")
.sessionAttr("utente", new Utente())
).andExpect(status().isMovedTemporarily())
.andExpect(view().name("redirect:/web/all/utente/form/utente.test/modifica"))
.andExpect(redirectedUrl("/web/all/utente/form/utente.test/modifica?insert=true"))
.andExpect(model().size(2))
.andExpect(model().attribute("insert", equalTo(true)));
ArgumentCaptor<Utente> formObjectArgument = ArgumentCaptor.forClass(Utente.class);
verify(utenteService, times(1)).insertUtente(formObjectArgument.capture());
verifyNoMoreInteractions(utenteService);
}
}