descriptive programming qtp
En este tutorial, aprenderá qué es la programación descriptiva en QTP , y Conexión de base de datos en QTP es decir, cómo conectarse a fuentes de datos externas como bases de datos y hojas de MS Excel usando QTP.
La programación descriptiva es un mecanismo para crear pruebas en las que se utiliza la 'descripción programática' de los objetos en lugar de registrarlos.
=> Haga clic aquí para ver la serie de tutoriales de capacitación de QTP
Una nota rápida sobre esta serie de artículos de QTP antes de pasar a los detalles de este tutorial:
Este es el último tutorial de nuestra serie de formación QTP en línea. Espero que todos hayan disfrutado de estos tutoriales y hayan comenzado a aprender de ellos.
Danos su opinión:
Estoy buscando sus comentarios no solo para esta serie de tutoriales, sino también sobre el sitio en general. Por favor Haga clic aquí para compartir sus pensamientos acerca de este sitio web. Apenas tardará un par de minutos en completarse. Valoramos sus comentarios y sugerencias. Háganos saber qué podemos hacer para mejorar su experiencia con SoftwareTestingHelp.com
herramientas de prueba de rendimiento para aplicaciones web
Lo que vas a aprender:
Programación descriptiva en QTP
La programación descriptiva es un mecanismo para crear pruebas en las que se utiliza la 'descripción programática' de los objetos en lugar de registrarlos.
Con esta técnica, se puede hacer QTP para identificar objetos que no están en el repositorio.
Hay 2 variaciones de programación descriptiva:
- Programación descriptiva estática
- Programación descriptiva dinámica
Programación descriptiva estática
Un método estático es cuando intenta acceder a un objeto usando un conjunto de propiedades y valores directamente en una declaración VB.
Sintaxis: TestObject (“Nombre de propiedad1: = valor de propiedad”, ”nombre de propiedad 2: = valor de propiedad”,… .n)
Así es como se usa:
aplicación espía de teléfono celular para android|_+_|
Programación descriptiva dinámica
Esto funciona creando un objeto de descripción. Mira el siguiente ejemplo para crear un objeto webButton.
|_+_|- micClass se refiere a las clases predefinidas en QTP. Los valores que puede asignar pueden ser webbutton, weblist, etc.
- En QTP 10 micClass los valores distinguen entre mayúsculas y minúsculas, pero en QTP 11 en adelante no lo son. Si escribe webbutton en QTP 10, fallará. Tendrá que escribir webButton. Pero el mismo botón web pasará en QTP 11.
Puede extraer todos los objetos de una determinada clase en una página utilizando la siguiente declaración:
|_+_|El conjunto de declaraciones anterior extraerá todos los botones de una página y los almacenará en el objeto ObjectList.
La versatilidad de usar programación descriptiva es que estas líneas de código funcionarán en cualquier página abierta. Puede abrir google.com en su navegador y contará cuántos botones hay en esa página. Funcionará exactamente de la misma manera si tuviera abierto amazon.com o cualquier otro sitio.
Esto se debe a que tenemos el nombre del título de la página establecido en *, que es una expresión regular.
Entonces, puede ver cómo podemos escribir código que se pueda usar en más de una ocasión al no codificar los valores de propiedad y al creando los objetos en tiempo de ejecución .
Llevemos nuestro ejemplo un poco más lejos. Supongamos que estoy tratando de imprimir los nombres de todos los botones web de la página uno tras otro.
Si hay 4 botones en una página, puede acceder a cada uno de ellos de la siguiente manera:
Msgbox ObjectList (0) .GetRoProperty (“nombre”): imprimirá el nombre del primer botón.
Msgbox ObjectList (1) .GetRoProperty ('nombre')
Msgbox ObjectList (2) .GetRoProperty ('nombre')
Msgbox ObjectList (3) .GetRoProperty ('nombre')
Tenga en cuenta que:
- El índice de los objetos secundarios comienza en 0
- Dado que el objeto alcanza sus propiedades en tiempo de ejecución, usamos el método GetRoProperty para recuperar las mismas.
Podemos cambiar el código anterior para que funcione para cualquier número de botones en la página mediante el uso de un 'bucle For' y repitiendo las declaraciones dentro del 'bloque For' hasta que llegue al final del recuento de objetos.
cómo crear una lista doblemente enlazada en java|_+_|
Usar un 'bucle for' es mejor porque, en este caso, no necesita saber cuántos objetos hay en su objeto de descripción.
Un par de puntos a tener en cuenta:
- Necesitará la práctica para dominar la programación descriptiva. No importa cuántos ejemplos mire y comprenda, necesitará experiencia práctica para trabajar realmente con él.
- Como probador, no se espera que sepa cómo se codifican los objetos en su AUT y qué valores tienen. Por lo tanto, use ObjectSpy de vez en cuando para elegir las propiedades adecuadas para ver las propiedades.
- Los resultados de la prueba indicarán que el objeto de prueba se creó dinámicamente durante la sesión de ejecución utilizando una descripción de programación o los métodos ChildObject.
Conexión a fuentes de datos externas de uso común desde QTP
Habrá muchas instancias mientras prepara las pruebas en las que tendrá que conectarse a una base de datos externa o algunas otras fuentes de datos. Una vez conectado, también tendrá que mover datos hacia y desde estas aplicaciones a QTP y viceversa.
Aunque está fuera del alcance de estos artículos proporcionar una guía completa para trabajar con interfaces externas, analizaremos algunas de las que se utilizan con más frecuencia.
Conexión de base de datos en QTP
Para conectarnos a una base de datos, normalmente usamos un objeto de conexión ADO. ADO son los objetos de datos ActiveX de Microsoft.
Los siguientes son los pasos a seguir:
#1) Cree un DSN. Consulte el tutorial del punto de control de la base de datos para ver cómo se hace esto o cree uno desde el panel de control.
#2) Crea un objeto de conexión:
Establecer conn = CreateObject ('ADODB.connection')
#3) Cree un objeto de conjunto de registros. El objeto de conjunto de registros contiene los resultados de la consulta que vamos a ejecutar.
Establecer rs = CreateObject ('ADODB.RecordSet')
#4) Abra el objeto de conexión y ejecute la consulta:
conn.Open 'DSN = testDB2; UID = swatiseela; pwd = testing @ 123'
rs. Abra 'Seleccionar * de abc', conecte
#5) Ahora se puede acceder a todos los resultados de la consulta mediante el objeto 'rs'.
#6) Por ejemplo, si desea obtener el recuento de filas devueltas, puede usar
rs.getrows
#7) Por ejemplo, la tabla tiene 2 filas y 3 columnas (a, b, c) puede acceder a los valores de la siguiente manera:
Msgbox rs.fields (0) .a
Msgbox rs.fiels (0) .b
Msgbox rs.fields (0) .c
#8) Puede utilizar una declaración de bucle si hay demasiados valores para acceder.
#9) Algunas de las funciones que puede utilizar el objeto de conjunto de registros son: rs.move, rs.movenext, rs.getrows, rs.close, rs.open, etc.
Veamos todo el código a la vez:
|_+_|Conexión a hojas de MS Excel
Todos sabemos que cuando abrimos una aplicación de Excel, todo el archivo es un libro de trabajo que tiene hojas con columnas y filas donde colocamos los datos.
El siguiente es el código y los comentarios para ayudarlo a comprender cómo se hace.
|_+_|Aparte de las funciones anteriores, tenemos las siguientes que podemos utilizar según sus necesidades.
- excelobj.activeworkbook.sheets.add - Para agregar una nueva hoja
- excelobj.activeworkbook.sheets (i) .delete - Para eliminar una hoja con índice i
- excelobj.activeworkbook.sheeets (i) .name = 'Nombre de su elección' - Para cambiar el nombre de una hoja con el índice i.
- x = excelobj.activeworkbook.sheets.count - para obtener el recuento de cuántas hojas hay en un libro de trabajo
- excelobj. activeworkbook.saves 'CompletePathWithNewName.xls' - para guardar el libro con un nuevo nombre
Con esto finaliza no solo este artículo, sino también nuestra serie de capacitación QTP. En el próximo artículo, cubriremos algunos más importantes Preguntas de la entrevista QTP con respuestas . Háganos saber sus comentarios y preguntas.
=> Visite aquí para ver la serie de tutoriales de capacitación de QTP
¡Esté atento a más artículos útiles y tutoriales sobre pruebas de software! Si no está suscrito a nuestro boletín gratuito por correo electrónico, hágalo ahora antes de haciendo click aqui .
Lectura recomendada
- Tutoriales de QTP: más de 25 tutoriales de formación de Micro Focus Quick Test Professional (QTP)
- Parametrización en QTP (Parte 2) - Tutorial de QTP # 20
- Tutorial de QTP n. ° 18: marcos híbridos y controlados por datos explicados con ejemplos de QTP
- Parametrización en QTP explicada con ejemplos (Parte 1) - Tutorial de QTP # 19
- Tutorial de QTP n. ° 6: comprensión de la configuración de ejecución y grabación de QTP para nuestra primera prueba
- Tutorial de QTP n. ° 24: uso de objetos virtuales y escenarios de recuperación en pruebas de QTP
- Tutorial de creación de base de datos de MongoDB
- Prueba de base de datos con JMeter