0
mockwebserver를 사용하여 내 안드로이드 앱에 대한 요청 및 응답을 모의합니다. 일련의 4 가지 서비스 호출을 거치는 로그인 기능을 테스트하고 있습니다.리디렉션이 포함 된 mockwebserver를 사용하여 서비스 호출을 테스트하는 방법은 무엇입니까?
- 얻기 액세스 토큰
- 다시 직접
- 가져 오기 사용자 정보 (다른 기본 URL)
- 다른 물건 (원래 기본 URL)
내가 조롱하려고 받기 리디렉션 된 통화의 응답. 여기 내 코드 :
@Test
public void testSuccessfulLogin() throws Exception {
// Post
server.enqueue(new MockResponse()
.setResponseCode(HTTP_OK)
.setBody(getStringFromFile(getInstrumentation().getContext(), "access_token.json")));
// Redirect
server.enqueue(new MockResponse().setResponseCode(HTTP_MOVED_TEMP));
// GET user info
server.enqueue(new MockResponse().setResponseCode(HTTP_OK).setBody(getStringFromFile(getInstrumentation().getContext(), "userinfo.json")));
// GET some other stuff
server.enqueue(new MockResponse().setResponseCode(HTTP_OK)
.setBody(getStringFromFile(getInstrumentation().getContext(), "sts.json")));
// Init call
loginWithoutWaiting(Data.serviceLoginUsername, Data.serviceLoginPassword);
// Debug (need to loop 4 times to get all 4 call paths)
RecordedRequest request = server.takeRequest();
request.getPath();
}
리디렉션 코드에서 내 테스트가 실패합니다. 나 로그인 할 수 없어. here 몇 가지 힌트를 찾았지만 무슨 일이 벌어지고 있는지 완전히 이해하지 못해서 현재로서는 제대로 작동하지 않습니다.