Según las tecnologías, los complementos y las plataformas, QTP elige el entorno en el que trabajar.
QTP puede funcionar en los siguientes entornos:
Entornos admitidos por defecto | ||
---|---|---|
Web | Activo X | Visual Basic |
Otros entornos compatibles | ||
.Net (Windows y formulario web) | Gente suave | Edad visual |
Java | Oráculo | Delphi |
Constructor de energía | Siebel | Servicios web |
SAP para Web | mantarraya | Emulador de terminal |
WPF | Ventanas estándar | SAP para Windows |
QTP admite 2 tipos de repositorio de objetos:
Repositorio de objetos compartidos
Repositorio de objetos por acción
Repositorio de objetos compartidos: También se denomina repositorio de objetos global, lo mejor cuando se utiliza un objeto dinámico y la descripción del objeto cambia con frecuencia en una prueba, presentada por la extensión "" .tsr ". Los probadores generalmente prefieren el repositorio de objetos compartidos más que el repositorio de objetos local al automatizar la prueba.
Repositorio de objetos por acción: es un repositorio de objetos predeterminado, también llamado repositorio de objetos local presentado por la extensión ".mtr".
En QTP, el nombre lógico es un nombre que identifica de forma única el objeto con respecto a otros objetos de la aplicación al crear un objeto en el repositorio. QTP usa este nombre de objeto para mapear el objeto presentado en el script con su descripción correspondiente en el repositorio de objetos usando este código
Navegador ("Navegador"). Página ("Tutorialspoint"). Aquí, Tutorialspoint es el nombre lógico del objeto.
Por lo general, QTP realiza acciones sobre el objeto y sus propiedades que se han guardado en el repositorio de objetos.
La programación descriptiva no facilita a los usuarios almacenar el objeto y sus valores de propiedad en el repositorio de objetos, pero facilita a los usuarios mencionar directamente el par de valores de propiedad en el script. La programación descriptiva no es para evitar el repositorio de objetos, facilita a los usuarios el reconocimiento de los objetos dinámicos.
En programación descriptiva, use la propiedad de nombre, por ejemplo:
Navegador ("nombre: =" xxx ""). Página ("nombre: =" xxxx "") .....
O
Utilice también la propiedad "micClass", por ejemplo,
Navegador ("micClass: = navegador"). Página ("micClass: = página") ....
¡Si! Puede grabar la aplicación colocada en una máquina remota a través del navegador local, no a través de un control remoto; citrix, pero si aún no puede grabar, es mejor instalar QTP y la aplicación en la misma máquina para mantener la misma sesión.
La palabra clave "CreateObject" crea y devuelve una referencia al objeto de prueba.
CreateObject (servername.typename [, location] )
Dónde,
servername - Un argumento obligatorio para el código, que se utiliza para presentar el nombre de la aplicación que proporciona objecst.
typename - Un argumento obligatorio para el código, utilizado para presentar el tipo o clase del objeto a crear.
location - Un argumento opcional para el código, utilizado para presentar el nombre del servidor de red donde se creará el objeto.
For example - Establecer IE = CreateObject ("Chrome.Application")
Sí, la llamada será posible creando la acción reutilizable en el script de prueba correspondiente y, desde el script de prueba de destino, realice llamadas a los scripts de prueba de acciones reutilizables.
En QTP, la división de acciones se puede utilizar para dividir una acción importante y existente en dos partes. La acción se puede dividir en partes según su funcionalidad, de modo que; el código se puede mejorar y reutilizar para diferentes propósitos.
Primero, abra QTP seleccionando el complemento de Java, luego realice la operación de grabación en el árbol de Java. Si no obtiene el entorno de grabación adecuado, en la herramienta QTP abierta, vaya a Herramientas de identificación de objetos Java. En el árbol, los objetos realizan cambios en las propiedades obligatorias y de asistencia para facilitar la identificación.
Las pruebas multiplataforma y las pruebas de navegador cruzado pueden ser posibles mediante la creación de diferentes acciones en términos de diferentes sistemas operativos y navegadores.
Prueba multiplataforma: la variable de entorno incorporada ayuda a excavar la información del sistema operativo. Puede llamar a la acción en función de la plataforma donde se registró la acción.
Prueba de navegador cruzado: el código; Navegador ("Valores fundamentales"). GetROProperty ("versión") ayuda a extraer el navegador y su versión correspondiente, por ejemplo; IE 6, Mozilla Firefox 9 o Netscape 5. Después de extraer el navegador, puede llamar a las acciones relevantes para el navegador en particular.
Directamente, puede conectarse a QC desde la ventana de la GUI de UFT. Para hacerlo -
Vaya al menú de archivo y elija (QC) Quality Center
A continuación, se abrirá una ventana para ingresar la URL de QC y otros detalles. En esta ventana, ingrese la identificación de usuario, la contraseña y el proyecto.
Los pasos anteriores le facilitarán la conexión a QC, más adelante podrá ejecutar las pruebas desde el mismo QC.
Tipos de marco de automatización en UFT -
Linear - Usando este marco, puede crear la prueba muy fácilmente, solo necesita escribir un solo programa sin modularidad en pasos secuenciales.
Keyword driven - Para crear la prueba utilizando este marco, debe generar una palabra clave diferente para un conjunto diferente de operaciones y referir estas palabras clave al código principal con script.
Data driven - Se utiliza para ejecutar el mismo conjunto de operaciones en varios conjuntos de datos que están reservados en archivos separados, generalmente hojas de Excel.
Hybrid - Un marco de combinación basado en datos y basado en palabras clave
BPT - Aquí, los programas se dividen en componentes comerciales y los programas se utilizan con uno u otro de los tipos de marcos anteriores.
Settoproperty significa establecer propiedad de objeto de prueba. Con esta propiedad, puede cambiar temporalmente los valores del objeto y su valor de propiedad correspondiente en tiempo de ejecución.
La función de redondeo en UFT se utiliza para redondear el valor decimal
For example
Mydecimal = 8.2755555
Roundedvalue = Round(Mydecimal , 5)
Print roundedvalue ‘it will print 8.275
¡Si! El usuario puede cambiar del repositorio de objetos local a compartido abriendo la ventana QTP, yendo a Test Settings Resources (proporciona una opción para elegir repositorios).
En QTP, las propiedades del objeto ayudan a identificar el objeto GUI. Durante la grabación, el repositorio de objetos de los objetos GUI almacena las propiedades que se han definido en la configuración de Identificación de objetos y mientras se ejecuta la prueba, QTP compara las propiedades que se han almacenado en el repositorio de objetos de los objetos GUI con las propiedades en pantalla. para reconocer de forma única el objeto GUI.
La ejecución de varios archivos de prueba (o series de archivos) juntos al mismo tiempo se conoce como prueba por lotes. Para ejecutar la prueba por lotes, QTP proporciona una herramienta "Ejecutor de prueba por lotes". Para hacer funcionar varios archivos juntos en una herramienta, solo necesita agregar un script de la prueba. Después de agregar el script, no necesita hacer nada manualmente, la herramienta comenzará a abrir y ejecutar automáticamente el script de prueba uno tras otro.
Hay muchos inconvenientes de QTP:
Costoso en términos de licencia y mantenimiento
No se pueden ejecutar varios subprocesos / instancias
El proceso de ejecución es lento en comparación con las herramientas de código abierto como Selenium
La licencia QTP solo se puede renovar desde HP
Hay 3 tipos de modo de grabación que admite QTP:
Modo de grabación normal (contextual)
Modo de grabación de bajo nivel
Modo de grabación analógica
Modo de grabación normal: un modo de grabación predeterminado que se ha utilizado en la mayoría de las actividades de automatización. Al utilizar el modelo de objetos de prueba de QTP, reconoce objetos además de su ubicación en la pantalla.
Modo de grabación de bajo nivel: en este modo, la operación del ratón en las coordenadas x, y ayuda a grabar los objetos. Es capaz de probar hashmaps y grabar objetos que no se pueden identificar con el modo de grabación normal.
Modo de grabación analógica: este modo de grabación graba la pantalla / ventana de la aplicación sobre la base de las operaciones del mouse y el teclado. Registra las operaciones, como; dibujar una imagen, grabar firma, arrastrar y soltar operaciones.
La Vista de palabras clave es una vista basada en iconos, muestra los pasos de la prueba en formato tabular y crea automáticamente documentación para los pasos de la prueba.
La Vista de experto proporciona la declaración de VB Script correspondiente para cada paso de prueba en la vista de palabras clave.
Aunque QTP no brinda soporte integrado a la conectividad de la base de datos, el lenguaje VBScript y los objetos ADODB ayudan en la conectividad de la base de datos.
Hay ciertas cosas que deben conocerse antes de la conectividad:
Cadena de conexión de su servidor (será diferente de un servidor a otro y se puede construir desde www.connectionstrings.com )
Tipo de base de datos
Nombre del servidor
Nombre de la base de datos
Username
Password
Para conectarse a la base de datos, ya sea; puede codificar el comando de conectividad de la base de datos directamente o puede utilizar la herramienta SQLQuery proporcionada por QTP.
Durante la programación de prueba o descriptiva, el espionaje de objetos facilita identificar y obtener las propiedades y métodos de los objetos en tiempo de ejecución y prueba de la aplicación. Se puede acceder directamente desde la barra de herramientas o desde el repositorio de objetos.
La extensión del archivo de código es script.mts.
Si un paso declarado como opcional, QTP piensa que el paso no es obligatorio para ejecutar. Si un paso opcional contiene objetos GUI, QTP ejecuta ese paso. Si un paso opcional no contiene objetos GUI, QTP evita el paso opcional y pasa al siguiente paso.
Los tipos de marcos de automatización son:
Scripting lineal: grabación y reproducción
Marco de arquitectura de biblioteca de pruebas
Marco de prueba basado en datos
Basado en palabras clave (o marco de prueba basado en tablas)
Marco híbrido
El punto de control de la página en QTP muestra el número de recuento de enlaces válidos / no válidos presentes en una página.
Aunque, QTP proporciona cuatro tipos de estado de resultado; Pasa, falla, termina y espera, un método estándar de QTP "Reporter.Reportevent" envía mensajes personalizados a la ventana de resultados de la prueba. “Reporter.Reportevent” también puede enviar una captura de pantalla del estado del resultado a la ventana de resultados de la prueba.
Syntax
Reporter.ReportEvent EventStatus, ReportStepName, Details [, ImageFilePath]
Mientras
EventStatus = 0 o micPass, 1 o micFail, 2 o micDone y 3 o micWarning
ReportStepName = (Cadena) Nombre del paso previsto en el informe (nombre del objeto).
Details= (Cadena) Descripción del evento del informe. La cadena se mostrará en el marco de detalles del paso en el informe.
El modelo de Objeto de Automatización de QTP se ocupa completamente del proceso de automatización que ocurre en QTP. Por lo general, el modelo de objeto de automatización QTP representa toda la configuración y funcionalidad proporcionada por la prueba QTP. Casi todos los cuadros de diálogo de QTP contienen su objeto de automatización correspondiente que puede editarse o recuperarse mediante sus propiedades o métodos correspondientes presentados en el Modelo de objeto de automatización. El usuario puede utilizar Objetos de automatización con elementos de programación VB estándar (bucles iterativos o declaraciones condicionales) para diseñar un script deseado.
Durante el tiempo de ejecución de la prueba, los valores de salida de texto capturan la visualización de texto en la aplicación. En la parametrización, los valores de salida de texto capturan valores que se muestran en cada iteración, esos valores se almacenarán en la tabla de datos en tiempo de ejecución para obtener más ayuda.
Step Generator agrega pasos a los scripts de prueba con la grabación de cualquier proceso.
Una acción se puede llamar de dos formas:
Llamada a COPIA de una acción: mientras se copia la acción (acciones reutilizables y no reutilizables), la acción también copia puntos de control, parametrización y la pestaña de acción correspondiente en la Tabla de datos de la prueba de llamada. En la tabla de datos de la prueba de llamada, puede hacer la modificación a la acción copiada que la modificación no afectaría a las otras pruebas.
Llamada a una acción EXISTENTE: Aquí, puede realizar una llamada solo a las acciones "Reutilizables". En la prueba de llamada, las llamadas a una acción existente estarán en modo de solo lectura. Solo se pueden modificar en la prueba en la que fueron creados. Es fácilmente manejable y se puede utilizar la misma acción en varias pruebas.
Test Fusion Report presenta todas las funciones de una aplicación de prueba que se utiliza mientras se ejecuta la prueba. Test Fusion Report se presenta como un formato tabular organizado. Además, brinda detalles de todos y cada uno de los pasos de las iteraciones, la tabla de datos en tiempo de ejecución y la película de la ejecución de prueba, si se selecciona.
La tabla de datos en tiempo de ejecución almacena valores, como; salida parametrizada, valores de punto de control, valores de salida, etc. Se presenta con la extensión de archivo "xls" y se almacena en la carpeta de resultados de la prueba. El usuario también puede acceder a él desde el Informe de prueba de fusión.
El punto de control es un punto de verificación que genera un estado PASA o FALLO al comparar una propiedad específica con el valor actual y el valor esperado.
Un valor de salida es un valor registrado durante la ejecución de una prueba y se puede almacenar en una ubicación particular como; ya sea en una tabla de datos o en una variable. A diferencia de los puntos de control, no compara dos valores para generar el estado PASA / NO PASA.
En QTP, las excepciones se pueden manejar mediante el uso de "escenarios de recuperación" y declaraciones "En caso de error".
Para manejar la excepción en el escenario de recuperación, debe definir tres cosas:
Eventos activados
Pasos de recuperación
Ejecución de prueba posterior a la recuperación
Para manejar la excepción mediante declaraciones "En caso de error": en el script, debe utilizar las declaraciones "En caso de error, reanudar siguiente" y "En caso de error, ir a 0".
En QTP, las acciones están escritas en un lenguaje de secuencias de comandos VB que no devuelve ningún valor. Las funciones están escritas en lenguaje de secuencias de comandos VB que devuelve un valor único.
Cada acción contiene su propio repositorio de objetos, tabla de datos, pantalla activa, etc., mientras que la función no.
La función se puede llamar en acción, pero la acción no se puede llamar en función.
En QTP, las funciones se guardan con la extensión ".vbs", mientras que las acciones se guardan con la extensión ".mts".
La acción es interna de QTP, mientras que la función es solo líneas de código con algunos / ninguno parámetros y un solo valor de retorno.
Algunas veces las acciones son reutilizables, pero otras no, mientras que las funciones siempre son reutilizables.
Use la palabra clave DIM antes de un nombre de variable para declarar una variable y use la palabra clave SET antes de un nombre de variable para asignar valor a la variable
For Example
“Dim weight”, here DIM keyword is used to declare weight variable.
Set weight = 40, here SET keyword is used to assign value “40” to the weight variable.
GetRoProperty es un método estándar de QTP que obtiene valores de propiedad de un objeto en tiempo de ejecución.
A veces, QTP es incapaz de encontrar un objeto que coincida con la descripción del objeto correspondiente. O, en algún momento, QTP encuentra más de un objeto que coincide con la descripción del objeto. Entonces, para resolver este problema, QTP ignora las descripciones de los objetos y se concentra en el mecanismo de identificación inteligente para identificar los objetos.
El mecanismo de identificación inteligente de QTP utiliza dos tipos de propiedades para identificar los objetos: propiedad de filtro base y propiedad de filtro opcional.
Propiedad de filtro base: una propiedad de una clase de objeto de prueba específica cuyos valores cambian cuando cambia el significado real del objeto original.
Propiedades de filtro opcionales: también ayuda a identificar los objetos de una clase en particular cuyas propiedades cambian con frecuencia, pero si ya no son aplicables, puede ignorarlas.
Puede crear un archivo ZIP de los scripts en su computadora de origen que se puede importar a la computadora de destino de QTP utilizando la función "Generate Script". Para aprovechar esta función, vaya a la pestaña Herramientas / Opciones de configuración de prueba de identificación de objetos.
¡No! No podemos abrir dos instancias de QTP en una sola máquina para trabajar, pero el propio QTP puede funcionar en múltiples instancias de la Aplicación bajo prueba (AUT) y maneja múltiples ventanas del navegador IE simultáneamente.
Sintaxis para importar xls a QTP -
DataTable.ImportSheet "..\..\TestData\Input.xls",1,dtGlobalSheet
Syntax to export xls into QTP,
DataTable.ExportSheet "..\..\Results\Output.xls","Global"
SetToProperty es un método estándar de QTP que cambia temporalmente la propiedad de un objeto almacenado en el repositorio de objetos.
El retardo de tiempo estándar para la aplicación basada en web es de 60 segundos y se puede cambiar mediante el cuadro de diálogo Configuración de prueba.
La sintaxis correcta para escribir datos en un archivo de Excel en UFT es:
filepath = “C:\Bugs\Reports.xlsx”
Set objExcel = CreateObject(“Excel.Application”)
objExcel.Visible = True
Set Wb= objExcel.Workbooks.Open (filepath)
Wb.worksheets(1).Cells(1,1).Value = “TutorialPoints” read value from Excel file
TSR significa Test Shared Repository, que se utiliza para compartir repositorios de objetos.
Siga los pasos que se indican a continuación para generar un archivo TSR:
Primero, abra el repositorio de objetos y luego vaya al menú de archivo. A continuación, exporta la opción de objetos locales y selecciónala. UFT abrirá un cuadro de diálogo para guardar el archivo.tsr; proporcione la ruta deseada para guardar el archivo.
Los pasos anteriores generarán el archivo .tsr en UFT.
Es una herramienta estándar integrada proporcionada por QTP para convertir acciones en componentes de procesos de negocio.
UFT proporciona tres formas de obtener el recuento de filas de la tabla web.
Usando la propiedad del objeto webtable - rowcount
Usando GetROProperty
Usando HTML DOM + UFT
Hay dos formas de exportar la tabla de datos para sobresalir:
DataTable.Export ("C: \ export.xls")
DataTable.ExportSheet "C: \ mysheet.xls" (crea el nuevo archivo en ausencia del archivo de Excel)
QTP admite tres tipos de variables de entorno:
Integrado (solo lectura)
Interno definido por el usuario (solo lectura)
Externo definido por el usuario (lectura / escritura)
La siguiente sintaxis utilizada para recuperar la variable de entorno
Environment.Value( "name") = "TutorialPoints"
OR
Environment.Value( "OS") = " TutorialPoints"
Mientras
Environment.Value ("name") La sintaxis devolverá el nombre como TutorialPoints
Environment.Value ("OS") Esto devolverá el sistema operativo de su sistema
En el punto de control de mapa de bits, el usuario puede comparar dos mapas de bits completos, así como parte de los mapas de bits de un píxel a píxel.
En el punto de control de la imagen, el usuario solo puede verificar los valores de las propiedades de la imagen
Diferencia entre archivos qfl y vbs -
qfl es un archivo de biblioteca de funciones de prueba rápida, mientras que vbs es el archivo vbscript de Microsoft
qfl es un archivo no ejecutable mientras que vbs es un archivo ejecutable
Para usar el archivo qfl en UFT, debe asociar el archivo qfl desde la configuración de prueba, mientras que el archivo vbs solo se puede asociar con la instrucción "ejecutar archivo".
La sintaxis correcta para escribir datos en un archivo de texto en UFT es:
Content = “TutorialPointsTutorials”
Set Fo = createobject ("Scripting.FilesystemObject")
Set f = Fo.openTextFile ("c:\myFile.txt",8,true) ' open in write mode
f.Write (contents)
f.Close
Set f = nothing
La extensión de una biblioteca de funciones es ".QFL".
QTP no realiza iteraciones basadas en hojas de datos locales, realiza iteraciones basadas en hojas de datos globales, de modo que; la iteración de prueba será solo una vez en la hoja de datos global.
El código que se proporciona a continuación ayuda a enviar correos electrónicos desde Outlook:
Set Outlook = CreateObject ("Outlook.Application")
Dim Message 'As Outlook.MailItem
Set Message = Outlook.CreateItem (olMailItem)
With Message
.Subject = Subject
.HTMLBody = TextBody
.Recipients.Add (aTo)
Const olOriginator = 0
.Send
End With
Siga el código que se proporciona a continuación para obtener datos de la base de datos:
Set db = createobject (“ADODB.Connection”)
db.Open “Provider = Microsoft.Jet.OLEDB.4.0;Data Source=G:\guru99\vb6\admission_project.mdb;
Persist Security Info = False”
Set rst = createobject (“ADODB.Recordset”)
rst.Open “select*from Course”, db, 3
id = rst. RecordCount
For i = 0 to id-1
Print rst.field (0) & rst.fields (1) & rst.fields (2) & rst.fields (3)
rst.Movenext
Next
Siempre que el repositorio de objetos crece, comienza a dar un rendimiento deficiente debido a su mayor tamaño y UFT enfrenta problemas para identificar objetos del repositorio de objetos, la programación descriptiva (también conocida como descripción programática) proporciona una forma de identificar objetos y realizar operaciones en objetos que no están presentes en el repositorio de objetos. La programación descriptiva incluye el nombre y el valor de la propiedad. Realiza la operación de objetos de la aplicación que son muy dinámicos y realiza operaciones en la aplicación en tiempo de ejecución sin tener el conocimiento de las propiedades únicas del objeto.
En algún momento, QTP no reconoce los objetos de una aplicación que se han considerado como objetos estándar para una aplicación. QTP considera esos objetos como objetos virtuales y los asigna a clases estándar, esos objetos pueden ser un botón o una casilla de verificación. Durante el tiempo de ejecución, QTP copia la acción del usuario en el objeto virtual y el resultado de la prueba muestra el objeto virtual como un objeto de clase estándar.