나는 mockito를 사용하여 테스트 케이스를 작성했습니다. 아래는 테스트 케이스의 코드입니다. 그 두 번째 시험은 널 항상 잘하지만를 반환하는 작업 첫 번째 테스트 케이스의 경우메서드가 junit에서 null을 반환 할 때 mockito
@RunWith(SpringRunner.class)
public class LoginControllerTest {
private MockMvc mockMvc;
@InjectMocks
private LoginService loginService;
@Mock
private LoginController loginController;
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
// Setup Spring test in standalone mode
mockMvc = MockMvcBuilders.standaloneSetup(loginController).build();
}
@Test
public final void test() throws Exception {
// Assign
when(loginService.test()).thenReturn("hello");
// act
mockMvc.perform(get("/hello"))
// Assertion
.andExpect(status().isOk())
.andExpect(content().string("Message from service: hello"));
verify(loginService).test();
}
@Test
public final void usernameInvalidAndPassword() throws Exception {
User userData = new User();
userData.setUserName("[email protected]");
userData.setPassword("Passw0rd");
User userDataNew = new User();
userDataNew.setUserName("[email protected]");
userDataNew.setPassword("Passw0rd");
JSONObject requestBody = new JSONObject();
requestBody.put("userName", "[email protected]");
requestBody.put("password", "Passw0rd");
JSONObject responseBody = new JSONObject();
responseBody.put("status_code", "200");
responseBody.put("message", "ok");
// Assign
when(loginService.saveUser(userData)).thenReturn(userDataNew);
// act
mockMvc.perform(get("/login")
.param("userName", "[email protected]")
.param("password", "Passw0rd"))
// Assertion
.andExpect(status().isOk()).andExpect(content().json(responseBody.toString())).andDo(print());
}
. 아무도 도와 줄 수 있습니까? 미리 감사드립니다.