Los scripts deben mantenerse a la par con las aplicaciones que se están desarrollando
Durante la prueba de regresión, los equipos de prueba suelen generar un conjunto de scripts, incluso mientras los desarrolladores actualizan y modifican la aplicación. Además, los desarrolladores pueden cambiar algunas propiedades o jerarquías de los objetos. Cuando los testers reproducen los scripts guardados en la aplicación actualizada, esta reproducción puede generar un error que indica que no se puede encontrar un objeto.
Los scripts encuentran cambios que no son errores
Usted puede encontrarse frente al siguiente escenario: Cuando los desarrolladores
actualizan o modifican una aplicación, los desarrolladores también modifican el
título de la ventana para que se corresponda con la versión de la aplicación. En el
mapa de su script guardado, usted capturó objetos en diferentes mapas de objeto para
diferentes pantallas de la aplicación. Cada mapa de objeto usa la misma ventana como
el objeto principal para cada uno de los objetos en la jerarquía del mapa de
objetos. El título de la ventana es la propiedad crítica que se usa para identificar
el objeto. Cuando se reproducen los scripts guardados en la nueva versión de la
aplicación con títulos de ventana modificados, usted obtiene frecuentes mensajes de
error: ObjectNotFound.
IBM® Rational® Functional Tester considera a los títulos modificados como
errores, ya que los títulos no se corresponden con los que figuran en el script.
Los algoritmos de reconocimiento de objeto de Rational Functional Tester no sólo se basan en el objeto en sí mismo. Los algoritmos también verifican las propiedades de los objetos que se encuentran en los estratos más altos de la jerarquía del objeto y controlan la cadena de objetos principales que se dirigen hacia el objeto superior.
La reconfiguración de cientos de valores de las propiedades nos hace perder tiempo
Para hacer que Rational Functional Tester deje de considerar a estos cambios de propiedades como errores, usted debe reducir el valor de la propiedad crítica a 0. Después de todo, el título modificado de una ventana no es un error. Al realizar esta modificación, Rational Functional Tester no usa esta propiedad para identificar el objeto. Rational Functional Tester no le ofrece ninguna función de configuración global para reducir el valor de la propiedad del título de la ventana. Por lo tanto, usted debe modificar el valor de la propiedad del título de manera manual en cada mapa de objeto que incluye a dicho objeto. Imagínese lo que ocurrirá si usted tiene cientos de mapas de objeto que debe modificar. Considere el tiempo que perdería en cada iteración.
Configuración de scripts para encontrar errores, cambios de código no apropiados
Usted necesita una forma programática para configurar en un solo lugar el valor de la propiedad del objeto de los objetos comunes que incluyen las pruebas. En vez de modificar el valor de la propiedad manualmente en cada mapa de objeto o de recapturar el objeto, usted puede modificar el valor de la propiedad del objeto durante el tiempo de ejecución. Usted agrega un método a su superclase auxiliar y, luego de esto, llama este método desde cada script que necesita modificar el valor de la propiedad del objeto. Luego de agregar este método, los testers pueden ejecutar scripts viejos en las aplicaciones actualizadas (realizando unos pocos cambios a los scripts). Además, los cambios a los títulos de las ventanas, por ejemplo, no provocan errores.
La superclase auxiliar le ofrece verdadera ayuda
Para crear una superclase auxiliar que modifique el valor de la propiedad de un objeto, haga lo siguiente:
- En Rational Functional Tester, haga clic con el botón derecho del mouse en el nombre del proyecto y seleccione Add Test Folder (Agregar carpeta de prueba).
Figura 1. Creación de una carpeta de superclase
- Creación de un archivo de superclase auxiliar: Haga clic en File (Archivo) >New (Nuevo) > Helper (Auxiliar) Superclass (Superclase).
Figura 2. Creación de una carpeta de superclase auxiliar
- En Folder (Carpeta), ingrese la ruta hacia la carpeta.
- Seleccione un nombre de proyecto en la lista Project (Proyecto).
- Ingrese un nombre de clase en Script name (Nombre del script).
Figura 3. Especificación de una carpeta, un proyecto y un nombre de superclase auxiliar
- Haga clic en Finish (Finalizar). Rational Functional Tester crea un script en Java™ Editor. Usted puede usar este script para ingresar código Java manualmente.
- Ingrese el método que estará disponible para el script. Use el siguiente listado de código para crear su método. Haga todas las modificaciones que sean necesarias según su proyecto.
Listado 1. Código de la superclase auxiliar
package superclasses; import java.io.File;
import java.util.Enumeration;
import com.rational.test.ft.object.map.IMappedTestObject;
import com.rational.test.ft.object.map.ObjectMap;
import com.rational.test.ft.script.RationalTestScript;
public abstract class
ScriptSuperClass extends RationalTestScript
{ public void changeweight(){ // Get
relative object map path for a script. String
map=this.getScriptName().toString().replace(".", "//");
String mapName =
"resources//"+map+".rftxmap"; //
Path to the project String projectDir =
"C:\\youtprojectLocation";
// Opening the object map file File f = new
File(projectDir, mapName); ObjectMap om = ObjectMap.load(f);
Enumeration e = om.elements();
while (e.hasMoreElements()){ //
Locate the object by its role plays in the
UI. IMappedTestObject obj = (IMappedTestObject)
e.nextElement(); String role
= obj.getRole().toString();
if(role.equals("Document"))
{ Object titleValue =
obj.getProperty(".title");
//to reduce the weight of title.
obj.setProperty(".title", titleValue, 0); }
// Save the object map ObjectMap.store(om, f); } } } |
Luego de crear su propia superclase auxiliar, úsela en su script.
Ponga la superclase auxiliar en funcionamiento
- En Rational Functional Tester, haga clic con el botón derecho del mouse en el script, que va a usar el método de la superclase que usted acaba de crear.
- Seleccione Properties (Propiedades).
Figura 4. Propiedades del script
- Resalte Functional Test Script (Script de prueba funcional)en el recuadro derecho y haga clic en Browse (Navegar) al lado del campo Helper Superclass (Superclase auxiliar). Se abrirá una ventana de especificación.
- Ingrese el primer carácter del nombre de la superclase auxiliar del usuario en Select default helper superclass for the script (Seleccionar superclase auxiliar predeterminada para el script). Rational Functional Tester le mostrará el elemento correspondiente.
- Seleccione el elemento correspondiente y haga clic en OK.
Figura 5. Selección de la superclase para el script
- Llame al método de la superclase auxiliar en su script.
Figura 6. Llamada al método de la superclase
Prueba de todos los cambios que realmente importan
El tiempo de su equipo de prueba es muy valioso. En las pruebas de regresión, usted se debe concentrar en los cambios más importantes que se hicieron en la aplicación y no en los títulos de las ventanas que se modificaron o en otros cambios de menor importancia. Una vez configurado en 0 el valor de la propiedad para el título de la ventana, los cambios en dicho aspecto en la aplicación que se está probando no generan errores, lo que le deja más tiempo para concentrarse en la prueba de las modificaciones importantes que se realizaron en la aplicación.
Aprender
- Para mayor información sobre Rational Functional Tester:
- Navegue por la página de developerWorks sobre Rational Functional Tester y tenga acceso a vínculos hacia artículos técnicos y muchos recursos relacionados. La página de aterrizaje del software Rational de developerWorks también es un buen punto de partida.
- Explore el Centro de Información de Rational Functional Tester, donde podrá acceder a un breve tour en formato de video. Usted también podrá encontrar más información sobre la superclase auxiliar en el centro de información.
- Investigue Rational Functional Tester Plus, un paquete de software de prueba de aplicaciones.
- Únase al foro de Rational Functional Tester para formular preguntas y participar de discusiones.
- Descargue la versión gratuita de prueba de Rational Functional Tester.
- Obtenga mayor información sobre otras aplicaciones
en IBM Rational Software
Delivery Platform(que incluye herramientas de colaboración para equipos
geográficamente dispersos y de desarrollo paralelo y software especializado para la
gestión de arquitecturas, la gestión de activos, la gestión de cambios y
publicaciones, la gestión de requisitos integrados, la gestión de procesos y
carteras y la gestión de calidad). Usted podrá encontrar manuales de los productos,
guías de instalación y otra documentación importante en el Centro de
documentación online de IBM Rational.
- Visite el área de software Rational en
developerWorks para acceder a recursos técnicos y mejores prácticas para los
productos de Rational Software Delivery Platform.
- Explore los cursos online de
Rational basados en computadora, basados en Internet y guiados por
instructores. Perfecciones sus habilidades y obtenga más información sobre
las herramientas Rational con estos cursos, que van de nivel introductorio a nivel
avanzado. Los cursos que figuran en este catálogo están disponibles para que usted
los adquiera en la forma de capacitación basada en computadora o basada en Internet.
Algunos de los cursos introductorios están disponibles de manera completamente
gratuita.
- Subscríbase al newsletter de IBM
developerWorks, una actualización semanal de los mejores tutoriales,
artículos, archivos para descargar de Internet, actividades comunitarias,
transmisiones por Internet y eventos de developerWorks.
Obtener los productos y tecnologías
- Pruebe Rational Functional Tester de manera gratuita (registración
obligatoria).
- Descargue las versiones de prueba de
otros productos de software de IBM Rational.
- Descargue las versiones de evaluación
de los productos de IBM y tenga acceso a herramientas de desarrollo y
productos middleware de DB2®, Lotus®, Tivoli® y
WebSphere®.
Comentar
- Involúcrese en el foro de
discusión de Prueba de GUI y funcional de developerWorks, donde usted podrá
discutir diversos temas y formular preguntas sobre Rational Functional Tester y
otros temas generales de prueba.
- Ingrese a los blogs de developerWorks y
participe en la comunidad
developerWorks.