Visión general
Test RealTime integra tres herramientas de prueba:
-
La prueba de unidad automatiza la prueba de componentes de software C y Ada.
-
La prueba de objetos es una propuesta orientada a objetos para probar el comportamiento de código C++.
-
La prueba del sistema es un entorno eficaz para probar aplicaciones basadas en mensajes.
La elección de la herramienta de prueba que se debe utilizar con la aplicación depende del entorno de desarrollo y la
naturaleza de la aplicación. Para cada herramienta de prueba, debe desarrollar un script de prueba dedicado.
Antes de escribir las pruebas reales para la aplicación, Test RealTime necesita que cree el proyecto de prueba y enlace
el proyecto a la aplicación que se somete a prueba.
Pasos de la herramienta
Para crear un script de prueba en Test RealTime, debe llevar a cabo las acciones siguientes:
-
Ejecutar el asistente para la prueba de componentes
-
Entrar datos de prueba y resultados esperados
-
Modificar el comportamiento de los fragmentos
Test RealTime proporciona un asistente para la prueba de componentes que, cuando se ejecuta, analiza código fuente
especificado y genera aprovechamiento de prueba totalmente ejecutable. El objetivo de todo ello es que el desarrollador
garantice que el código destino se ha probado tal como se esperaba, se defina comportamiento de fragmentos (consulte el
segundo paso) y se entren datos de prueba y resultados esperados (consulte el tercer paso).
NOTA: No es obligatorio utilizar el asistente para la prueba de componentes. Todos los archivos y el código necesario
para dar soporte a una prueba se pueden generar manualmente. Sin embargo, el asistente puede evitar un esfuerzo
considerable. De cualquier modo, la ejecución y el informe de la prueba se han automatizado.
Puede acceder al asistente para la prueba de componentes de dos modos, y en cualquier método se da por supuesto que ha
se ha abierto un proyecto de Test RealTime.
-
Seleccione el enlace Actividades, que se encuentra en la parte derecha de la página Inicio de Test RealTime. La
selección de este enlace proporciona una lista de las tres principales actividades que puede elegir el
desarrollador. Para realizar la prueba de componentes, el desarrollador debe seleccionar el enlace Prueba de
componentes.
-
Pulse el botón derecho del ratón sobre cualquier archivo de origen/clase/método/función/procedimiento de la ventana
Proyectos, situada en la parte derecha de Test RealTime. Al seleccionar la opción Probar... del menú emergente se
abre el asistente para la prueba de componentes.
La diferencia básica entre ambos métodos de inicialización del asistente para la prueba de componentes es que la
primera opción requiere que el usuario seleccione los archivos de origen que contienen las
funciones/métodos/procedimientos que se van a probar, y en la segunda opción ya se sabe el archivo de origen que se va
a utilizar, por lo que se saltan los pasos iniciales del asistente para la prueba de componentes.
En cualquier caso, se solicita al desarrollador que seleccione una Modalidad de prueba, Típica o Experta. La diferencia
está en el comportamiento de los fragmentos deseado. Como recordatorio, un fragmento es "un componente que contiene
funcionalidad para objetivos de prueba", es decir, un componente designado para actuar de un modo predefinido con el
objeto de facilitar la prueba de algún otro componente del sistema. En la modalidad típica, Test RealTime genera,
automáticamente, una plantilla de fragmento para cualquier función/método/procedimiento al que se haya hecho referencia
explícita en los archivos de origen seleccionados. La modalidad experta le permite seleccionar, además, componentes a
los que no se ha hecho referencia explícita en los archivos de origen elegidos. De cualquier modo, más adelante se
define la funcionalidad real de los fragmentos. Consulte más abajo el segundo paso de la herramienta.
Después de ejecutar el asistente hasta su conclusión, Test RealTime crea un nodo en el proyecto activo. Dicho nodo
contiene una referencia a los archivos de origen seleccionados, así como a los archivos que se necesitan para la
creación del aprovechamiento de prueba. Estos archivos adicionales se deben modificar para:
-
definir el comportamiento de los fragmentos
-
especificar la fecha para dirigir las funciones/métodos/procedimientos que se someten a prueba
-
especificar los resultados esperados para cada conjunto de datos de entrada
Para C, C++ y Ada, el software Rational compila el aprovechamiento de prueba, los fragmentos de prueba y los lenguajes
de script de prueba para adaptar las complejidades específicas de dichos lenguajes. Para Java, Test RealTime utiliza
Java como lenguaje del script de prueba y basa las infraestructuras de fragmentos de prueba y aprovechamiento de prueba
en la infraestructura JUnit (http://www.junit.org).
Para
obtener información detallada, consulte en la publicación Rational Test RealTime User Guide, el capítulo que
trata sobre la interfaz gráfica de usuario->asistentes para la actividad->Asistente para la prueba de
componentes.
Los scripts de prueba que genera el asistente para la prueba de componentes se pueden ejecutar inmediatamente. Sin
embargo, hasta que el desarrollador especifica los datos reales con los que dirigir el componente que se somete a
prueba, así como los valores de salida esperados, la prueba no resulta ni útil ni informativa.
Cada lenguaje para el que Test RealTime ofrece soporte facilita la creación de pruebas de un modo diferente; se han
optimizado todas las propuesta para las características exclusivas de cada lenguaje. Además, C++ es exclusivo, puesto
que se pueden generar y ejecutar pruebas estándar, sino también se pueden realizar comprobaciones de contrato
opcionales. Las comprobaciones de contrato actúan como aserciones, es decir, se utilizan para verificar elementos como,
por ejemplo, condiciones previas y condiciones posteriores e invariables.
Para
obtener información detallada relacionada con C y Ada, consulte el capítulo de la publicación Rational Test RealTime
User Guide que trata sobre:
Para obtener
información detallada relacionada con C++, consulte los capítulos de la publicación Rational Test RealTime User
Guide que tratan sobre:
Para obtener
información detallada relacionada con Java, consulte los capítulos de la publicación Rational Test RealTime User
Guide que tratan sobre:
Los componentes se han diseñado para actuar de un modo determinado. Independiente de su nivel de granularidad, los
componentes deben responder a un conjunto de entradas dado con un conjunto de salidas predefinible determinado.
"Predefinible" significa que se pueden especificar los resultados, explícita o algorítmicamente, antes de la ejecución
de la prueba.
Muy a menudo, los componentes requieren la asistencia de otros componentes del sistema a fin de llevar a cabo su
funcionalidad. Los otros componentes pueden ser tan simples como una función adicional o tan vastos como un subsistema
completo ubicado en otra parte del sistema. De cualquier modo, es bastante común que un desarrollador descubra que sus
esfuerzos en la prueba de componentes se ven entorpecidos por el hecho de que los componentes de los que depende el
código aún no existen o, como mínimo, su funcionamiento aún no es fiable. La acción de fragmentar compensa esta
dificultad. (De hecho, la fragmentación se puede utilizar para garantizar el funcionamiento correcto eliminando toda
dependencia con respecto al código de terceros).
Es responsabilidad del desarrollador simular correctamente los componentes de los que depende el componente que se
somete a prueba. La simulación correcta significa que la funcionalidad fragmentada debe ser lo bastante precisa como
para garantizar que el componente en sí mismo puede rastrear el éxito o la anomalía del componente que se somete a
prueba, en lugar de que los fragmentos produzcan información incorrecta.
Rational Test RealTime facilita la creación de fragmentos a través de los lenguajes de script de prueba soportados. En
especial, para obtener información sobre la creación de los fragmentos de prueba:
Para
obtener información detallada relacionada con C y Ada, consulte el capítulo de la publicación Rational Test RealTime
User Guide que trata sobre:
Para obtener
información detallada relacionada con C++, consulte los capítulos de la publicación Rational Test RealTime User
Guide que tratan sobre:
Para obtener
información detallada relacionada con Java, consulte los capítulos de la publicación Rational Test RealTime User
Guide que tratan sobre:
-
Prueba automatizada->Prueba de componentes para Java->Visión general de la prueba de Java->Aprovechamiento
de fragmentos de Java
Para obtener más información
Para obtener información detallada sobre cómo ejecutar la campaña de prueba, consulte la Guía de la herramienta
titulada Ejecución de pruebas utilizando Rational Test RealTime.
|