2009-09-30 15 views
5

Tengo un problema al ejecutar pruebas de unidad en Eclipse detrás de un proxy, ya que las clases utilizadas por las pruebas de unidad llaman a algunos servicios web, que están detrás de un proxy. En Tomcat puedo, por supuesto, especificar un proxy que se utilizará, pero cuando ejecuto pruebas de unidades directamente desde Eclipse, la configuración del proxy de Eclipse parece ser ignorada. ¿Cómo puedo configurar mis pruebas unitarias o Eclipse para usar un proxy en este caso?Pruebas de unidad de servicio web fallidas detrás de un proxy en Eclipse

Respuesta

11

Encontré la solución: aparentemente uno puede configurar el proxy en la configuración de ejecución/depuración en Eclipse. Para ello:

  1. haga clic derecho en la clase de prueba de unidad
  2. de depuración como - depuración configuraciones
  3. ir a la pestaña "Arguments"
  4. Agregar configuración de proxy a "argumentos de VM":

    • -Dhttp.proxyHost=proxy.host.com
    • -Dhttp.proxyPort=8080
    • -Dhttp.nonProxyHosts=[list of hosts separated with pipe character]

Si estás detrás de un proxy protegido por contraseña, hay que añadir:

  • -Dhttp.proxyUser=someUserName
  • -Dhttp.proxyPassword=somePassword
+0

Tal obvio para veteranos desarrolladores de Java, pero Necesito poner un guion (-) delante de cada argumento cuando lo agregas a la sección de argumentos de VM en Eclipse (o al menos lo hice). Ej: -Dhttp.proxyHost = abcd.com -Dhttp.proxyPort = 8888. – Peter

+0

Respuesta editada en consecuencia, gracias por señalarlo (los guiones estaban en mi respuesta original, pero al parecer fueron eliminados al mejorar el formateo). – simon

+2

También debe tener en cuenta que la configuración del proxy para HTTPS utiliza una propiedad ligeramente diferente, por ejemplo. -Dhttps.proxyHost = proxy.host.com. Me preguntaba por qué esto no funcionaba para mí al principio y fue porque mi código usa HTTPS. – talawahtech

Cuestiones relacionadas