Grabación de una prueba de servicio utilizando un proxy HTTP

Para poder grabar pruebas para servicios basados en SOAP o servicios XML sencillos, ejecute un programa cliente a través de un proxy HTTP dedicado. Para grabar la prueba, el proxy intercepta las llamadas de servicio y los retornos de mensajes entre el cliente y el servicio. Esta intercepción puede provocar problemas de autenticación porque el cliente se comunica con el proxy de grabación en lugar de con el servidor real.
Antes de empezar

Asegúrese de que Rational Agent Controller se esté ejecutando en el sistema.

Si el espacio de trabajo no contiene un proyecto de prueba, el asistente de grabación de pruebas crea uno. Si desea generar una prueba en un proyecto específico, verifique que el proyecto esté disponible antes de grabar la prueba.

Si está probando un servicio web basado en SOAP, asegúrese de que dispone de acceso a un archivo WSDL (Web Services Description Language) válido. El asistente puede importar archivos WSDL del espacio de trabajo, del sistema de archivos, de un repositorio remoto o de un URL. Asegúrese de que los archivos WSDL utilizan la sintaxis correcta para el entorno de prueba. Es posible que el cliente de servicio genérico no funcione con algunos archivos WSDL.

Si utiliza una SSL (Capa de sockets seguros) para autenticar la comunicación con el servidor, debe configurar el cliente para aceptar el certificado que el proxy del grabador genera en lugar del certificado del servidor real.

Si utiliza seguridad de SOAP o archivos adjuntos, asegúrese de que ha configurado el entorno con las bibliotecas y los archivos de configuración correctos.Consulte Configuración del entorno para la seguridad de SOAP para obtener más información.

De manera predeterminada, el proxy de grabación utiliza el puerto 1080. Puede modificar el número de puerto en el asistente si este puerto ya está siendo utilizado o si un cortafuegos o un proxy de la empresa utilizan este puerto.

Por qué y cuándo se efectúa esta tarea
Para grabar una prueba:
  1. En la perspectiva Prueba, pulse Archivo > Nueva > Prueba a partir del registro o pulse el botón Nueva prueba a partir del registro.
  2. Seleccione Crear prueba a partir de nueva grabación y Grabación de servicio web o XML utilizando el cliente existente (proxy HTTP) y, a continuación, pulse Siguiente.
  3. Seleccione un proyecto y, a continuación, en Nombre del archivo de prueba, escriba un nombre para la prueba. El nombre especificado es el nombre base de la grabación, la prueba y otros archivos necesarios. Puede ver estos archivos en el Navegador de pruebas o el Explorador de paquetes de Java con sus sufijos distintivos, pero sólo verá el nombre (de prueba) simple en el Navegador de pruebas.
  4. Pulse Siguiente.
  5. Especifique cualquier archivo de definición de esquemas WSDL o XML (XSD) que pueda utilizarse para crear el contenido de la prueba:
    1. Si va a grabar un servicio web basado en SOAP, pulse Añadir para seleccionar o importar los archivos WSDL de los servicios web que desea probar. Si va a probar un servicio XML sin formato a través de HTTP, sin SOAP, no se necesita un archivo WSDL.
    2. Si hay un XSD disponible, pulse Añadir para seleccionar o importar los archivos XSD que definen el contenido XML de los servicios que desea probar.
  6. Pulse Siguiente.
  7. Especifique el Puerto que utiliza el servicio y el valor del Tiempo de espera excedido en segundos. El grabador utiliza su propio proxy para grabar retornos y llamadas de mensajes. Sin embargo, si ya utiliza un proxy, como un cortafuegos corporativo, para acceder al servicio, o si necesita transformar mensajes de entrada o de salida con código personalizado, pulse Valores avanzados y siga estos pasos:
    1. Para un proxy HTTP existente, escriba la dirección IP o el nombre de host en proxy HTTP y verifique un valor en Puerto. Si algunos hosts necesitan omitir el proxy, escriba los nombres de dichos hosts en No hay proxy HTTP para. Utilice una coma para separar varios nombres de host.
    2. Para un proxy HTTP existente, escriba la dirección IP o el nombre de host en proxy HTTPS y verifique un valor en Puerto. Si algunos hosts necesitan omitir el proxy, escriba los nombres de dichos hosts en No hay proxy HTTPS para. Utilice una coma para separar varios nombres de host.
    3. Si necesita transformar mensajes de entrada y de salida con su propio código Java, pulse Examinar para especificar una clase Java en el espacio de trabajo. Esta opción es para casos específicos donde los mensajes deben transformarse o comprimirse a través de un método de proceso que puede definirse en una clase Java.
  8. Pulse Siguiente.
  9. Si no tiene acceso al archivo de almacén de claves del certificado de servidor, puede indicar al proxy del grabador que proporcione su propio certificado. Para hacerlo, seleccione Autenticar con el certificado del proxy. Esta acción hace que le proxy del grabador intente identificarse con su propio certificado y, por lo tanto, para poder configurar la aplicación del cliente para confiar en el certificado proxy del grabador, utilice uno de los siguientes métodos.
    Consejo: Si va a utilizar SSL, seleccione Autenticar con certificado de proxy y sáltese esta página.
    • Si la aplicación cliente utiliza un archivo de almacén de confianza, especifique cómo quiere que el grabador de proxy se autentifique con la aplicación cliente: seleccione Añadir certificado proxy a almacén de confianza del cliente, pulse Examinar para especificar el archivo de almacén de confianza y escriba la contraseña.
    • Si no hay ningún archivo de almacén de confianza, utilice preferencias, mandatos u opciones que la aplicación cliente proporciona para especificar un servidor de confianza.
  10. Si tiene acceso al archivo de almacén de claves del certificado del servidor, si el servicio requiere una doble autenticación o si el servicio ofrece varios puntos finales y cada uno requiere su propia configuración SSL, quite la marca del recuadro de selección Autenticar con certificado de proxy y utilice la tabla para asociar una configuración SSL con cada nombre de host de punto final y con cada puerto:
    1. Por cada nombre de host de punto final y por cada puerto, seleccione una configuración SSL existente y pulse Editar configuración o pulse Nueva configuración para crear una configuración SSL. Esta acción abrirá la ventana Propiedades de SSL.
    2. Para la configuración SSL actual, seleccione o quite la marca del recuadro de selección Autenticar con certificado de servidor, como se describe en el paso 9.
    3. Si desea que el servidor autentique el cliente, seleccione Utilizar certificado de cliente, pulse Examinar para especificar el archivo de almacén de claves del certificado de cliente y, si el almacén de claves está codificado, especifique la contraseña.
    4. Pulse Aceptar.
  11. Pulse Siguiente. Si es la primera vez que graba una prueba de servicio web, lea la Advertencia sobre privacidad y, a continuación, seleccione Aceptar y pulse Finalizar para continuar.
  12. Ejecute la aplicación cliente manualmente y utilícela para enviar llamadas de servicio al servicio y para recibir retornos de mensaje desde el servicio. Se graban todas las llamadas de servicio y los retornos de mensaje que pasar por el proxy de grabación.
  13. Una vez finalizada la grabación de las llamadas de servicio y las devoluciones de mensajes para las pruebas, pulse DetenerIcono detener de la vista Control del grabador. Se abrirá una ventana de progreso mientras se genera la prueba.

Comentarios