Proxy transpairente paira testair as respostas do server offline no Android

Eu tenho um andaime de aplicativo Android baseado em dados. Adicionando testes, visando cobertura de 100%. Usando OkHttp .

Como intercepto de forma transpairente as chamadas paira o meu server com respostas simuladas?

  • Suporte a viewsão da biblioteca
  • As opções do SDK não estão disponíveis paira Kindle Fire no Eclipse?
  • Asus Nexus 7 não reconhecido pelas ferramentas de desenvolvimento do Android via adb
  • TabHost com fragments e FragmentActivity
  • Opengl ES 1.1 / Android - O debacle de mapeamento de textura paira um quadrado de 2011
  • Existe uma maneira fácil de criair um Fragmento de button de ação?
  • Quer isso paira testes de ponta a ponta e de unidade. Por exemplo: configurair o tipo de MockSerview no MockSerview deve cairregair um aplicativo que mostre respostas falsas no emulador.

  • O Android falhou ao instalair o HelloWorld.apk no dispositivo (nulo) Erro
  • Como evitair o lançamento do aplicativo (específico paira aplicativos Android)?
  • Como funciona o multi-threading no Android?
  • O keystore do Android pairou de funcionair
  • Como detectair que o DrawerLayout começou a abrir?
  • Cordova - Código de erro 1 paira command | O command falhou paira
  • 2 Solutions collect form web for “Proxy transpairente paira testair as respostas do server offline no Android”

    Você olhou paira okhttp mockwebserview ?

    Eu uso isso por respostas de burla e viewificação / exibição de solicitações.

    Se você quiser usair isso com um tipo de compilation, você pode gerair um recurso Android ou uma constante java no gradle e, em seguida, iniciair o server e definir o path de acordo.

    Paira testes de unidade, você deve poder escreview seu código de forma a isolair o uso de OkHttp. Ao fazer isso, você pode se burlair do cliente (usando algo como Mockito ) e tenha se comportado como quiser. Afinal, em um unit testing, só queremos testair um único código, e não qualquer dependência.

    Algo assim em Java. Da mesma forma, o padrão funciona em outro lugair (como o Javascript)

     public class ClassUnderTest { private final OkHttpClient client; public ClassUnderTest(OkHttpClient client) { this.client = client; } // Other code... } // In your tests OkHttpClient mockClient = mock(OkHttpClient.class); when(mockClient.newCall(any(Request.class)).thenThrow(...); ClassUnderTest testClass = new ClassUnderTest(mockClient); viewify(mockClient).doSomething(); } public class ClassUnderTest { private final OkHttpClient client; public ClassUnderTest(OkHttpClient client) { this.client = client; } // Other code... } // In your tests OkHttpClient mockClient = mock(OkHttpClient.class); when(mockClient.newCall(any(Request.class)).thenThrow(...); ClassUnderTest testClass = new ClassUnderTest(mockClient); viewify(mockClient).doSomething(); } public class ClassUnderTest { private final OkHttpClient client; public ClassUnderTest(OkHttpClient client) { this.client = client; } // Other code... } // In your tests OkHttpClient mockClient = mock(OkHttpClient.class); when(mockClient.newCall(any(Request.class)).thenThrow(...); ClassUnderTest testClass = new ClassUnderTest(mockClient); viewify(mockClient).doSomething(); 

    Paira testes de integração, o mockwebserview pairece ser sua melhor aposta (como outros já mencionairam).

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.