Esta guía de la herramienta se aplica para su utilización tanto en sistemas Microsoft Windows como con sistemas UNIX.
Las herramientas de PurifyPlus incluyen Rational Purify, Rational PureCoverage y Rational Quantify.
Si desea
obtener más información sobre las herramientas de PurifyPlus, lea el manual de Iniciación a de PurifyPlus
(versión Windows o versión UNIX).
Para obtener información paso a paso sobre la utilización de las herramientas de PurifyPlus, consulte la
ayuda en línea de la herramienta.
Puede utilizar las herramientas de PurifyPlus para lo siguiente:
-
Detectar fugas y errores de memoria (programas C/C++ en Windows y UNIX). Utilice Purify para determinar
fugas y errores en la aplicación que se somete a prueba.
-
Supervisar la cobertura de código (Windows y UNIX). Utilice PureCoverage para que se muestren los vacíos de
la prueba y alertarle sobre las regresiones.
-
Perfilar el rendimiento (Windows y UNIX). Utilice Quantify para que le avise en caso de que nuevas
incorporaciones degraden el rendimiento.
El resultado de ejecutar conjuntos de aplicaciones de prueba con PurifyPlus es código fiable y sin errores que se
ejecuta con la máxima eficacia.
Pasos de la herramienta
Para implementar las pruebas utilizando herramientas de PurifyPlus debe:
1. Ejecutar el programa en Purify para recopilar errores, fugas y datos de cobertura
(sólo programas C/C++)
Purify detecta errores de tiempo de ejecución, incluidas fugas de memoria, en la aplicación que se somete a prueba y en
los componentes que utiliza. Informa sobre errores de memoria como, por ejemplo, errores de límites de matriz, acceso a
través de punteros pendientes, lecturas de memoria no inicializadas, errores de asignación de memoria y fugas de
memoria, lo que permite resolverlos antes de que se produzcan posibles daños.
Para empezar, incorpore Purify en los archivos make, los archivos de proceso por lotes y los scripts Perl existentes.
-
En Windows, modifique las líneas de mandatos que ejecutan el programa. <NombrePrograma>.exe
Purify /SaveTextData <NombrePrograma>.exe
-
-
En UNIX, modifique la línea de enlace y compilación:
% purify -logfile=<nombreArchivo> cc -g <nombre_programa>.c
El uso de la opción /SaveTextData -logfile en UNIX, hace que
Purify se ejecute sin interfaz de usuario y, cuando se ejecuta el programa desde el script, envía los datos de fuga y
error a un archivo de salida de texto cuando termina el programa.
Examine el archivo de salida, o bien, escriba scripts para analizarlo. Puede utilizar los mensajes de aviso y error del
archivo como criterios adicionales para los resultados de la prueba.
Si ha instalado PureCoverage, puede recopilar datos de cobertura para las mismas ejecuciones añadiendo la opción /Coverage (Windows), o bien, añadiendo purecov purify (UNIX). La utilización de los datos de cobertura también le permite buscar las partes del
código en las que no ha comprobado si hay errores. Para obtener más información sobre la utilización de los datos de
cobertura, consulte el Paso 2 de esta Guía de la herramienta.
Nota:
-
Utilice la API de Purify para controlar la recopilación de datos de control del programa.
-
Purify también dispone de opciones de línea de mandatos que le permiten guardar datos de prueba como archivos
binarios que puede examinar por medio de la interfaz gráfica de usuario de Purify; este aspecto se trata en la Guía
de la herramienta "Análisis del rendimiento de tiempo de ejecución utilizando las herramientas de Rational
PurifyPlus".
Para obtener más información, busque los temas del índice de la ayuda en línea de Purify que tratan
sobre:
-
ejecución de programas
-
mensajes de error
-
opciones
-
funciones de API
-
cómo guardar datos
2. Ejecutar el programa en PureCoverage para supervisar la cobertura de
código
PureCoverage ofrece información precisa sobre la cobertura de código tanto a nivel de función como a nivel de línea.
Utilice PureCoverage con las pruebas nocturnas para garantizar que las pruebas avanzan al mismo paso que el desarrollo
de código.
Para empezar, incorpore PureCoverage en los archivos make, los archivos de proceso por lotes y los scripts Perl
existentes.
-
En Windows, modifique las líneas de mandatos que ejecutan el programa o el archivo de clase Java, el archivo
.jar o el applet, para incluir PureCoverage:
Para programas C/C++: Coverage /SaveTextData <NombrePrograma>.exe
Para archivos de clase Java: Coverage /SaveTextData /Java Java.exe
<NombreClase>.class
Para programas de código gestionado .NET: Coverage /SaveTextData /Net
<NombrePrograma>.exe
El uso de la opción /SaveTextData hace que PureCoverage se ejecute sin interfaz de
usuario y, cuando se ejecuta el programa desde el script, envía los datos a un archivo de salida de texto cuando
termina el programa.
-
-
En UNIX, modifique la línea de enlace y compilación:
Para programas C/C++: % purecov cc -g <nombre_programa>.c
Para archivos de clase Java: % purecov -java java <nombre_clase>
Utilice la opción -export de PureCoverage después de la salida del programa para
escribir los datos de cobertura en un archivo de salida de texto.
A medida que ejecuta el código, PureCoverage registra datos sobre las líneas y las funciones que se han utilizado.
Puede llamar a funciones de API de PureCoverage desde el programa para guardar datos en puntos específicos del código,
o bien, puede recopilar datos sólo para ciertas rutinas. Al salir del programa, dispone de un conjunto preciso de datos
en el que se indica las líneas y las funciones que ha abarcado la prueba, y las que no.
Puede fusionar datos de cobertura de varias ejecuciones o mantenerlos en archivos separados para analizar los cambios
de la cobertura.
Utilice scripts para comparar los datos actuales con datos que ha recopilado de ejecuciones anteriores. Si la cobertura
se desactiva, es posible que las pruebas no ejecuten nuevo código o que el nuevo código incluya un defecto que haga que
no se pruebe una gran sección de código. Utilice una herramienta de prueba como, por ejemplo, Rational Robot o Rational
Visual Test para escribir guiones de prueba que utilicen el nuevo código.
Nota: puede examinar archivos de datos de cobertura binarios utilizando la interfaz gráfica de usuario de
PureCoverage.
Para obtener más información, consulte los temas del índice de la ayuda en línea de PureCoverage que
tratan sobre:
-
ejecución de programas
-
opciones
-
funciones de API
-
cómo guardar datos
-
comparación de datos
3. Ejecutar el programa en Quantify para perfilar el rendimiento
Quantify proporciona un conjunto de datos de rendimiento preciso y completo para el programa y sus componentes, que le
permite supervisar el rendimiento e identificar pronto regresiones en el ciclo de prueba y desarrollo.
Para empezar, incorpore Quantify en los archivos make, los archivos de proceso por lotes y los scripts Perl existentes.
-
En Windows, modifique las líneas de mandatos que ejecuta el programa o el archivo de clase, el archivo .jar
o el applet para incluir:
Para programas C/C++: Quantify /SaveTextData <NombrePrograma>.exe
Para archivos de clase Java: Quantify /SaveTextData /Java Java.exe
<NombreClase>.class
Para programas de código gestionado .NET: Quantify /SaveTextData /Net
<NombrePrograma>.exe
El uso de la opción /SaveTextData hace que Quantify se ejecute sin interfaz de usuario
y, cuando se ejecuta el programa desde el script, envía los datos a un archivo de salida de texto cuando termina el
programa.
-
-
En UNIX, modifique la línea de enlace y compilación:
Para programas C/C++: % quantify cc -g <nombre_programa>.c
Para archivos de clase Java: % quantify -java java <nombre_clase>
Utilice la opción -export de Quantify después de la salida del programa para escribir
l os datos de rendimiento en un archivo de salida de texto.
A medida que ejecuta el código, Quantify registra datos sobre el rendimiento del programa. Puede utilizar funciones de
API para pausar y reanudar el registro de datos en cualquier momento, limitando así el perfilado de partes de código
concretas. También puede guardar datos en puntos determinados de la ejecución del código, o bien, recopilar datos de
rendimiento sólo para rutinas específicas. Al salir del programa, Quantify tiene un perfil preciso sobre el
rendimiento.
Puede escribir scripts en los que se comparen conjuntos de datos y se informe sobre los cambios de rendimiento:
-
Las degradaciones del rendimiento pueden indicar que el código que se ha incorporado más recientemente ha
ralentizado el programa. Analice los datos que ha recopilado para buscar las secciones del programa que presentan
un rendimiento inadecuado.
-
Las mejoras marcadas pueden indicar que los desarrolladores han mejorado el código, o bien, que por alguna razón
las pruebas no se han ejecutado en grandes secciones del código. Compruebe los datos de cobertura para ver si se
siguen obteniendo los niveles de cobertura anteriores.
Nota: Quantify también puede guardar datos de prueba como archivos binarios, que se pueden examinar utilizando
la interfaz gráfica de usuario de Quantify; este aspecto se trata en la Guía de la herramienta "Análisis del
rendimiento de tiempo de ejecución utilizando las herramientas de Rational PurifyPlus".
Para obtener más información, busque los temas del índice de la ayuda en línea de Quantify que tratan sobre:
-
ejecución de programas
-
opciones
-
funciones de API
-
cómo guardar datos
-
comparación de datos
|