Implementación de correlación de datos para la ejecución

Para implementar la correlación de datos durante la ejecución, configure la clase que amplía la clase com.ibm.rational.test.lt.kernel.action.KAction para desencadenar una llamada en el motor de correlación de datos.

Antes de empezar

Para implementar la correlación de datos, familiarícese previamente con las clases siguientes: Consulte la información Javadoc para obtener descripciones de clases y métodos.

Acerca de esta tarea

La interfaz IKAction define la funcionalidad básica que todas las acciones del kernel deben implementar. La interfaz IKAction es la interfaz básica para todas las acciones del kernel. Las acciones pueden representar bucles, condiciones u otras construcciones de código.

Para implementar la correlación de datos durante la ejecución, codegen graba los recopiladores y sustitutos en contenedores. Para implementar la correlación de datos en tiempo de ejecución, codegen tendrá que grabar los recopiladores y sustitutos en contenedores. Esto se consigue llamando a los métodos LTTestTranslator.translateHarvesterContainer() y LTTestTranslator.translateSubstituterContainer() en tiempo de codegen, cuando está convirtiendo su acción. Ambos métodos se encuentran en el conector com.ibm.rational.test.lt.codegen.core. Estos contenedores tendrán que añadirse a la acción y almacenarse con ella. Estos contenedores se deben añadir a la acción y almacenarse en ella. Cuando se ejecutan las acciones, deben llamar a estos contenedores de sustitutos y orígenes de datos. El contenedor de sustitutos se llama al principio de la acción, antes de enviar los datos, y el contenedor de orígenes de datos se llama al final de la acción, tras haber recibido los datos.

Procedimiento

Para implementar la parte de ejecución de la correlación de datos:

  1. Debe ampliar un punto de ampliación en codegen.core para obtener la ejecución IProtoActionAdapter grabada para su reproducción:
    1. Amplíe el punto de ampliación DataCorrelationProtoAdapter en el paquete com.ibm.rational.test.lt.codegen.core. Para realizar la ampliación, utilice el conector que es la ampliación del conector com.ibm.rational.test.lt.datacorrelation.execution que implementa la interfaz IProtoActionAdapter.
    2. Indique al conector com.ibm.rational.test.lt.datacorrelation.execution qué tipos de IKAction hay que gestionar y el nombre del conector.
    3. Una vez completada, debería ver algo parecido a lo siguiente cerca del principio del código .java generado:

      pa.addPA("com.ibm.rational.test.lt.sdksamples.datacorrelation.execution.socket.SocketActionAdapter", "com.ibm.rational.test.lt.sdksamples.protocol.socket.io.SocketSend"); La primera serie debería ser el nombre de la clase que implementa IProtoActionAdapter, y la segunda seria debería ser el nombre de KAction para la que la clase IProtoActionAdapter se debería llamar. Escriba sin faltas de ortografía, puesto que tiene que estar escrito correctamente.

  2. Para implementar la ampliación del conector datacorrelation.execution, el conector debe implementar la interfaz com.ibm.rational.test.lt.datacorrelation.execution.IProtoActionAdapter. El conector com.ibm.rational.test.lt.datacorrelation.execution principal utiliza la interfaz para llamar al conector y para obtener la información para la implementación.
    Nota: Se trata también del conector que amplía la clase DataCorrelationProtoAdapter en el punto de ampliación codegen.
  3. Para iniciar el proceso de sustitución en el método IDataSub.substituteData(), utilice la acción y el mapa hash como parámetros.
    1. La acción que está actualmente activa llamará al método com.ibm.rational.test.lt.datacorrelation.execution.sub.IDataSub.substituteData(). El contenedor de sustitución ejecuta todas las normas de sustitución y coloca los nuevos valores de serie (que se leen de las variables de correlación de datos) en el mapa hashMap. El primer valor de hashMap es propertyType, y el segundo es toda la serie completa para dicho propertyType. De modo que, cuando la sustitución se haya llevado a cabo, la serie entera se solucionará automáticamente.
    2. El contenedor de sustitutos devuelve el control a la interfaz IKAction.
    3. La interfaz IKAction lee los valores de serie del mapa hash y los envía a los lugares adecuados.
  4. Para empezar la recopilación de datos, la acción que está actualmente activa llama al método IDataHarvester.harvestData(). La acción pasa automáticamente al contenedor.
    1. El recopilador de datos llama al conector que ha ampliado el conector de ejecución de correlación de datos para obtener los valores de serie a los que deben aplicarse las reglas de recopilación.
    2. El contenedor de recopiladores coloca los valores recopilados en variables de correlación de datos. A continuación, estas variables de correlación de datos se utilizan en ejecuciones de sustitución posteriores.

Comentarios