Ejecutar Robolectric en IDEA detrás del proxy

Tengo ambiente corporativo con todas las llamadas http y https están detrás del proxy.

Pude corregir algunos problemas con las descargas de la línea de comandos poniendo exportando la variable de entorno http_proxy en el archivo .profile.

Pero con Robolectric 2.2 que está descargando fuentes o clases de Android antes de la primera ejecución, fallé. No tengo la configuración de CI, así que sólo estoy tratando de ejecutar pruebas de la idea.

¿Alguien sabe caliente para solucionarlo?

He intentado proporcionar proxy en la configuración de IDEA, he intentado proporcionar una variable de entorno adicional en la configuración de ejecución. Nada ayuda

UPD Cuando especifico proxy en la configuración de Mac está produciendo otro error: No se puede encontrar el recurso 'org.sonatype.oss: oss-parent: pom: 7' en el sonatype del repositorio ( https://oss.sonatype.org/content/groups Público

Parece que estoy probablemente usando o faltando dependencia transitiva equivocada para Robolectirc (no uso maven o hiedra, acabo de descargar jarras de maven central)

UPD2 Nope, Es sólo tiempo de espera de nuevo: Error al transferir archivo: Operación agotada

Sé que esto es un poco viejo Pregunta, pero si desea utilizar el proxy que debe poner el siguiente archivo en su directorio home / .m2:

Settings.xml

<settings> <proxies> <proxy> <active>true</active> <protocol>http</protocol> <host>your_host_here</host> <port>your_port_here</port> </proxy> </proxies> </settings> 

Para el gradle, mira aquí: https://docs.gradle.org/current/userguide/build_environment.html

Para agregar otra respuesta tardía a una vieja pregunta 🙂 Desde Robolectric 2.4 se introdujeron dos propiedades para ayudar en el escenario cuando sus pruebas Robolectric en CI se ejecutan detrás de un servidor proxy:

Tienes que especificar robolectric.offline y robolectric.dependency.dir en tu archivo build.gradle. Algo como esto:

 afterEvaluate { project.tasks.withType(Test) { systemProperties.put('robolectric.offline', 'true') systemProperties.put('robolectric.dependency.dir', "${project.rootDir}/.robolectric/") } } 

Entonces necesitas descargar los tarros necesarios de maven o sonatype y colocarlo en el directorio que especificaste …

Escribí una entrada en el blog con más detalles.

En caso de que esto ayude a alguien. Configurar el proxy en settings.xml (intenté ambas rutas posibles para este archivo) no funcionó para mí. Terminé pasando eso como un gradle argumentos: gradle cleanTest test -Dhttps.proxyHost=<proxy-host> -Dhttps.proxyPort=<proxy-port>

  • Robolectric 3.0 InflateException con un fragmento personalizado de mapa
  • TypeNotPresentException al ejecutar el testcase de Android con robolectric y eclipse
  • Pruebas unitarias Robolectric fallan después de Multidex
  • Prueba de ActiveAndroid con Robolectric
  • ClassCastException: NoClassDefFoundError no se puede transmitir a RuntimeException
  • Manifiesto y problemas de configuración para conseguir que Robolectric trabaje con Android Studio 1.1.0
  • NPE cuando getSystemService se llama en una instancia de servicio por Robolectric
  • Robolectric With Gradle:. \ Res \ values ​​no es un directorio
  • Gradle + Robolectric: ¿Dónde puedo poner el archivo org.robolectric.Config.properties?
  • Configuración de Robolectric, Android Studio y Gradle para tomar una aplicación de prueba
  • Tarea con el nombre 'testDebug' no se encuentra en el proyecto ': module'
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.