From 04:00 PM CDT – 08:00 PM CDT (09:00 PM UTC – 01:00 AM UTC) Tuesday, April 16, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.



Cómo Modificar el Encabezado de un Reporte de TestStand en Formato XML



Software Primario:
Versión de Software Primario: 2010 SP1
Versión de Software Primario Corregido: N/A
Software Secundario: N/A

Problema:
Quiero agregar datos personalizados al encabezado de mi reporte de TestStand cuando utilizo el formato de reporte XML. ¿Cuál es la mejor manera de hacer esto?

Solución:
El reporte XML de TestStand depende de dos archivos: el archivo XML que es creado cada vez que se ejecuta una prueba, y la hoja de estilo XSL que es creada con anticipación y especificada en las opciones del reporte.   De esta forma, para modificar el reporte resultante, es necesario cambiar tanto la hoja de estilo XSL como el código de TestStand que genera el archivo XML.   Este documento discute los cambios en TestStand para tomar el valor de una variable y agregarlo al inicio del encabezado del reporte para un archivo de secuencia específico.   Antes de leer este documento, puede ser de gran ayuda revisar información acerca de XSLT y XPATH. En la sección de Ligas Relacionadas se presentan dos ligas que hacen referencia a estos temas.

Nota: Las instrucciones para este artículo comienzan con el archivo XSL que se distribuye con TestStand 2010 SP1.   Este archivo XSL es similar, pero no necesariamente idéntico, al archivo XSL que se distribuye con TestStand 4.2.x.   Versiones anteriores de TestStand tienen archivos XSL que probablemente sean distintos siendo que la estructura del archivo XSL fue reorganizada para TestStand 4.2.x.

Modificaciones XML utilizando TestStand:
Primero, los cambios necesitan ser realizados sobre la secuencia de prueba para guardar el valor de una variable al archivo XML generado.   Debido a que estamos realizando una modificación al encabezado del reporte, podemos utilizar el callback ModifyReportHeader para realizar los cambios.

  1. En su archivo de secuencia, agregue un callback haciendo clic derecho sobre el panel de Secuencias y seleccionando Sequence File Callbacks...  Agregue ModifyReportHeader de la lista y cierre la ventana.
  2. En la nueva secuencia de ModifyReportHeader, agregue una nueva variable Local llamada CustomText.  El valor de esta variable será el nuevo valor agregado al reporte, por lo que establezca un valor significativo como "My New Report Text".
  3. El último paso es generar XML desde la nueva variable y concantenarlo al XML Parameters.ReportHeader que ya ha sido enviado al callback.   Cuando ModifyReportHeader inicie, la cadena Parameters.ReportHeader contiene el XML que fue generado por el reporte predeterminado de TestStand en el modelo de procesos especificado.   Podemos concatenar a esta cadena para agregar mas datos al archivo XML para ser utilizados en la segunda sección de este artículo.   Para hacer esto, utilice la siguiente expresión:   Parameters.ReportHeader += Locals.CustomText.GetXML(XMLOption_NoOptions, 0, "CustomText", Parameters.ReportOptions.NumericFormat).  La función GetXML toma información de un PropertyObject y la convierte en una cadena XML con un formato apropiado.   Consulte la ayuda de TestStand sobre esta función para mas información.

Modificaciones XSL externas a TestStand:
Ahora que los datos han sido agregados al archivo XML, el archivo XSL debe modificarse para desplegar los nuevos datos.
  1. Abra horizontal.xsl en un editor de texto y busque la sección ADD_HEADER_INFO en el documento.   Esta sección debe estar comentada utilizando las etiquetas de comentario ("<!--" and "-->").  Utilizando HTML, agregue información para dar formato y desplegar la información que fue agregada al archivo XML en la sección anterior.   Para este ejemplo, utilizaremos el siguiente HTML:

<font face = "VERDANA" size = "4" color= "#003366">
    <xsl:value-of select="//Report/Prop[@Name='CustomText']"/>
</font>


Esto recuperará el valor del primer Prop node (bajo el primer Report node) que tenga como atributo Name "CustomText " - este es el valor que creamos en TestStand en la sección anterior.   Al valor recuperado se le aplica un formato utilizando las etiquetas <font>.   El valor es seleccionado utilizando XPath.   Si está intentando recuperar un valor distinto al utilizado en este ejemplo, consulte la liga del XPath Tutorial para determinar cómo referenciar ese valor.


Ligas Relacionadas:
Community Example: Modify XML Report in TestStand
Developer Zone: Best Practices for NI TestStand Report Generation and Customization
KnowledgeBase 4SB7G6CK: TestStand XML Report Customization
TestStand Help: XML Report Style Sheets

W3Schools.com: XSLT Tutorial
W3Schools.com: XPath Tutorial

Archivos Adjuntos:





Día del Reporte: 06/14/2010
Última Actualización: 06/29/2013
Identificación del Documento: 5ADH53GU