In base alle tecnologie, ai componenti aggiuntivi e alle piattaforme, QTP sceglie l'ambiente su cui lavorare.

QTP può funzionare negli ambienti indicati di seguito:

Per impostazione predefinita ambienti supportati
ragnatela Active X Visual Basic
Altri ambienti supportati
.Net (Windows e modulo web) Persone morbide Età visiva
Giava Oracolo Delphi
Power Builder Siebel Servizi web
SAP per il Web Stingray Emulatore di terminale
WPF Windows standard SAP per Windows

QTP supporta 2 tipi di repository di oggetti -

  • Repository di oggetti condivisi

  • Repository di oggetti per azione

Repository di oggetti condivisi: è anche chiamato un repository di oggetti globale, il migliore quando si utilizza un oggetto dinamico e la descrizione dell'oggetto cambia frequentemente in un test, presentato dall'estensione "" .tsr ". I tester di solito preferiscono il repository di oggetti condivisi rispetto al repository di oggetti locale mentre automatizzano il test.

Repository di oggetti per azione: è un repository di oggetti predefinito chiamato anche repository di oggetti locale presentato dall'estensione ".mtr".

In QTP, il nome logico è un nome che identifica in modo univoco l'oggetto rispetto ad altri oggetti dell'applicazione durante la creazione di un oggetto nel repository. QTP usa questo nome oggetto per mappare l'oggetto presentato nello script con la sua descrizione corrispondente nel repository degli oggetti usando questo codice -

Browser ("Browser"). Pagina ("Tutorialspoint"). Qui, Tutorialspoint è il nome logico dell'oggetto.

Di solito, QTP esegue un'azione sull'oggetto e sulle sue proprietà che sono state salvate nel repository degli oggetti.

La programmazione descrittiva non facilita agli utenti la memorizzazione dell'oggetto e dei suoi valori di proprietà nel repository di oggetti, ma facilita agli utenti di menzionare direttamente la coppia di valori di proprietà nello script. La programmazione descrittiva non serve ad evitare il repository di oggetti, ma facilita gli utenti nel riconoscere gli oggetti dinamici.

Nella programmazione descrittiva, utilizzare la proprietà name, ad esempio:

Browser ("name: =" xxx ""). Page ("name: =" xxxx "") ..... 

O

Utilizza anche la proprietà "micClass", ad esempio,

Browser ("micClass: = browser"). Page ("micClass: = page") ....

Sì! È possibile registrare l'applicazione collocata in una macchina remota tramite browser locale non tramite telecomando come; citrix, ma se non sei ancora in grado di registrare, è meglio installare QTP e l'applicazione sulla stessa macchina per mantenere la stessa sessione.

La parola chiave "CreateObject" crea e restituisce un riferimento all'oggetto di prova.

CreateObject (servername.typename [, location] )

Dove,

servername - Un argomento obbligatorio per il codice, utilizzato per presentare il nome dell'applicazione che fornisce objecst.

typename - Un argomento obbligatorio per il codice, utilizzato per presentare il tipo o la classe dell'oggetto da creare.

location - Un argomento facoltativo per il codice, utilizzato per presentare il nome del server di rete in cui deve essere creato l'oggetto.

 

For example - Imposta IE = CreateObject ("Chrome.Application")

Sì, è possibile chiamare creando l'azione riutilizzabile nello script di test corrispondente e dallo script di test di destinazione effettuare chiamate agli script di test delle azioni riutilizzabili.

In QTP, la suddivisione delle azioni può essere utilizzata per dividere un'azione importante ed esistente in due parti. L'azione può essere suddivisa in parti in base alla sua funzionalità, in modo che; il codice può essere migliorato e riutilizzato per scopi diversi.

Innanzitutto, apri QTP selezionando Java add-in, quindi esegui l'operazione di registrazione sull'albero Java. Se non stai ottenendo un ambiente di registrazione appropriato, nello strumento QTP aperto, vai a Strumenti Identificazione oggetto Java. Nell'albero gli oggetti apportano modifiche alle proprietà obbligatorie e assistive per facilitare l'identificazione.

È possibile eseguire test multipiattaforma e cross browser creando azioni diverse in termini di diversi sistemi operativi e browser.

Test multipiattaforma: la variabile di ambiente integrata aiuta a scavare le informazioni del sistema operativo. Puoi chiamare l'azione in base alla piattaforma in cui l'azione è stata registrata.

Cross Browser Testing: il codice; Browser ("Valori fondamentali"). GetROProperty ("versione") aiuta ad estrarre il browser e la sua versione corrispondente, ad esempio; IE 6, Mozilla Firefox 9 o Netscape 5. Dopo aver estratto il browser, è possibile richiamare le azioni relative al browser specifico.

Direttamente, puoi connetterti a QC dalla finestra della GUI UFT. Per farlo -

  • Vai al menu file e scegli il centro qualità (QC) 

  • Successivamente, si aprirà una finestra per inserire l'URL di QC e altri dettagli: in questa finestra, inserire l'ID utente, la password e il progetto

Fornire i passaggi precedenti ti faciliterà la connessione a QC, in seguito potrai eseguire i test dallo stesso QC.

Tipi di framework di automazione in UFT -

  • Linear - Usando questo framework puoi creare il test molto facilmente, basta scrivere un unico programma senza modularità in passaggi sequenziali.

  • Keyword driven - Per creare il test utilizzando questo framework, è necessario generare parole chiave diverse per diversi set di operazioni e fare riferimento a queste parole chiave al codice script principale.

  • Data driven - Viene utilizzato per eseguire lo stesso set di operazioni su più set di dati riservati in file separati, generalmente fogli Excel.

  • Hybrid - Una combinazione basata sui dati e basata su parole chiave

  • BPT - Qui, i programmi sono suddivisi in componenti aziendali e i programmi vengono utilizzati con l'uno o l'altro dei tipi di framework di cui sopra.

Settoproperty sta per set test object property. Utilizzando questa proprietà, è possibile modificare temporaneamente i valori dell'oggetto e il valore della proprietà corrispondente in fase di esecuzione.

La funzione Round in UFT viene utilizzata per arrotondare il valore decimale

For example

Mydecimal = 8.2755555

Roundedvalue = Round(Mydecimal , 5)

Print roundedvalue ‘it will print 8.275

Sì! L'utente può passare dal repository di oggetti locale a quello di condivisione aprendo la finestra QTP, andando su Test Settings Resources (fornire un'opzione per scegliere i repository).

In QTP, le proprietà dell'oggetto aiutano a identificare l'oggetto GUI. Durante la registrazione, il repository degli oggetti degli oggetti della GUI memorizza le proprietà che sono state definite nelle impostazioni di Identificazione dell'oggetto e durante l'esecuzione del test, QTP confronta le proprietà che sono state memorizzate nel repository degli oggetti degli oggetti della GUI con le proprietà sullo schermo per riconoscere in modo univoco l'oggetto GUI.

L'esecuzione di più file di test (o serie di file) contemporaneamente contemporaneamente è nota come test in batch. Per eseguire il test in batch, QTP fornisce uno strumento "Batch Test Runner". Per far funzionare più file insieme in uno strumento, è sufficiente aggiungere uno script del test. Dopo aver aggiunto lo script, non è necessario eseguire alcuna operazione manualmente, lo strumento inizierà automaticamente ad aprire ed eseguire lo script di test uno dopo l'altro.

Ci sono molti svantaggi di QTP:

  • Costoso in termini di licenza e manutenzione

  • Impossibile eseguire più thread / istanze

  • Il processo di esecuzione è lento rispetto a strumenti open source come Selenium

  • La licenza QTP può essere rinnovata solo da HP

Esistono 3 tipi di modalità di registrazione supportati da QTP:

  • Modalità di registrazione normale (contestuale)

  • Modalità di registrazione a basso livello

  • Modalità di registrazione analogica

Modalità di registrazione normale: una modalità di registrazione predefinita che è stata utilizzata nella maggior parte delle attività di automazione. Utilizzando il Test Object Model di QTP, riconosce gli oggetti indipendentemente dalla loro posizione sullo schermo.

Modalità di registrazione a basso livello: in questa modalità, il funzionamento del mouse nelle coordinate x, y aiuta nella registrazione degli oggetti. È in grado di testare hashmap e registrare oggetti che non possono essere identificati dalla normale modalità di registrazione.

Modalità di registrazione analogica: questa modalità di registrazione registra la schermata / finestra dell'applicazione sulla base delle operazioni del mouse e della tastiera. Registra le operazioni, come; disegno di un'immagine, registrazione della firma, operazioni di trascinamento della selezione.

Keyword View è una visualizzazione basata su icone, mostra le fasi del test in formato tabulare e crea automaticamente la documentazione per le fasi del test.

La vista Esperto fornisce l'istruzione VB Script corrispondente per ogni fase del test nella vista Parola chiave.

Sebbene QTP non fornisca alcun supporto integrato alla connettività del database, il linguaggio VBScript e gli oggetti ADODB aiutano nella connettività del database.

Ci sono alcune cose che devono essere conosciute prima della connettività:

  • Stringa di connessione del tuo server (sarà diversa da un server all'altro e può essere creata da www.connectionstrings.com )

  • Tipo di database

  • Nome del server

  • Nome del database

  • Username

  • Password

Per connettersi al database, uno; è possibile codificare direttamente il comando di connettività del database oppure è possibile utilizzare lo  strumento SQLQuery fornito da QTP.

Durante il test o la programmazione descrittiva, la spia degli oggetti facilita l'identificazione e l'acquisizione delle proprietà e dei metodi degli oggetti in fase di esecuzione e test dell'applicazione. È possibile accedervi direttamente dalla barra degli strumenti o dal repository degli oggetti.

L'estensione del file di codice è script.mts.

Se un passo è dichiarato come opzionale, QTP pensa che il passo non sia obbligatorio per essere eseguito. Se un passaggio facoltativo contiene oggetti GUI, QTP esegue tale passaggio. Se un passaggio facoltativo non contiene oggetti GUI, QTP evita il passaggio facoltativo e passa al passaggio successivo.

I tipi di framework di automazione sono:

  • Scripting lineare - Registrazione e riproduzione

  • Test Library Architecture Framework

  • Framework di test basato sui dati

  • Keyword-Driven (o Framework di test basato su tabella)

  • Framework ibrido

Il punto di controllo della pagina in QTP mostra i numeri di conteggio dei collegamenti validi / non validi presenti in una pagina.

Sebbene QTP fornisca quattro tipi di stato dei risultati; Superato, Non superato, Completato e In attesa, un metodo standard di QTP "Reporter.Reportevent" invia messaggi personalizzati alla finestra dei risultati del test. "Reporter.Reportevent" può anche inviare screenshot dello stato dei risultati alla finestra dei risultati del test.

Syntax

Reporter.ReportEvent EventStatus, ReportStepName, Details [, ImageFilePath]

Mentre

EventStatus = 0 o micPass, 1 o micFail, 2 o micDone e 3 o micWarning

ReportStepName = (String) Nome della fase prevista nel report (nome oggetto).

Details= (String) Descrizione dell'evento del report. La stringa verrà visualizzata nel riquadro dei dettagli del passaggio nel report.

Il modello oggetto di automazione QTP si occupa completamente del processo di automazione che avviene in QTP. Di solito, il modello Oggetto di automazione QTP rappresenta tutta la configurazione e le funzionalità fornite dal test QTP. Quasi tutte le finestre di dialogo QTP contengono il loro oggetto di automazione corrispondente che può essere modificato o recuperato dalle proprietà o metodi corrispondenti presentati nel modello di oggetti di automazione. L'utente può utilizzare oggetti di automazione con elementi di programmazione VB standard (cicli iterativi o istruzioni condizionali) per progettare uno script desiderato.

Durante il runtime del test, i valori di output di testo acquisiscono la visualizzazione del testo sull'applicazione. Nella parametrizzazione, i valori di output del testo acquisiscono i valori visualizzati a ogni iterazione, tali valori verranno memorizzati nella tabella dei dati di runtime per ulteriore assistenza.

Step Generator aggiunge passaggi agli script di test con la registrazione di qualsiasi processo.

Un'azione può essere chiamata in due modi:

Chiamata alla COPIA di un'azione: durante il copiatura dell'azione (azioni riutilizzabili e non riutilizzabili), l'azione copia anche i punti di controllo, la parametrizzazione e la scheda azione corrispondente nella tabella dati del test chiamante. Nella tabella dati del test chiamante, è possibile apportare la modifica all'azione copiata che la modifica non darebbe alcun effetto agli altri test.

Chiamata a un'azione ESISTENTE: qui è possibile effettuare una chiamata solo alle azioni "Riutilizzabili". Nel test di chiamata, le chiamate a un'azione esistente saranno in modalità di sola lettura. Possono essere modificati solo nel test in cui sono stati creati. È facilmente gestibile e può essere utilizzata la stessa azione in diversi test.

Test Fusion Report presenta tutte le funzionalità di un'applicazione di test che viene utilizzata durante l'esecuzione del test. Test Fusion Report si presenta come un formato tabulare organizzato. Inoltre, fornisce i dettagli di ogni fase delle iterazioni, la tabella dei dati di runtime e il filmato dell'esecuzione di test, se selezionato.

La tabella dei dati di runtime memorizza valori, come; output parametrizzato, valori di checkpoint, valori di output, ecc. Si presenta da solo con l'estensione di file "xls" e si memorizza nella cartella dei risultati del test. L'utente può accedervi anche dal Report Test Fusion.

Il punto di controllo è un punto di verifica che genera uno stato SUPERATO o FALLITO confrontando una proprietà specificata il valore corrente e il valore previsto.

Un valore di uscita è un valore registrato durante l'esecuzione di un test e può essere memorizzato in una posizione particolare come; in un Datatable o in una variabile. A differenza dei punti di controllo, non confronta due valori per generare lo stato PASS / FAIL.

In QTP, le eccezioni possono essere gestite utilizzando "scenari di ripristino" e istruzioni "In caso di errore".

Per gestire l'eccezione nello scenario di ripristino, è necessario definire tre cose:

  • Eventi attivati

  • Passaggi di ripristino

  • Esecuzione di test post-recupero

Per gestire l'eccezione mediante istruzioni "On Error" - Nello script, è necessario utilizzare le istruzioni "On Error Resume Next" e "On Error Go to 0".

In QTP, le azioni sono scritte in linguaggio di scripting VB che non restituisce alcun valore. Le funzioni sono scritte in linguaggio di scripting VB che restituisce un valore singolo.

Ogni azione contiene il proprio archivio oggetti, tabella dati, schermata attiva, ecc., Mentre la funzione non lo è.

La funzione può essere chiamata in azione, ma l'azione non può essere chiamata in funzione.

In QTP, le funzioni vengono salvate con l'estensione ".vbs" dove le azioni vengono salvate con l'estensione ".mts".

L'azione è interna a QTP mentre la funzione è solo righe di codice con alcuni / nessuno parametri e un singolo valore di ritorno.

Le azioni a volte sono riutilizzabili ma a volte no, mentre le funzioni sono sempre riutilizzabili.

Utilizzare la parola chiave DIM prima del nome di una variabile per dichiarare una variabile e utilizzare la parola chiave SET prima del nome di una variabile per assegnare un valore alla variabile

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 è un metodo standard di QTP che recupera i valori delle proprietà di un oggetto in fase di esecuzione.

A volte, QTP non è in grado di trovare un oggetto che corrisponda alla descrizione dell'oggetto corrispondente. Oppure, a volte, QTP trova più di un oggetto corrispondente alla descrizione dell'oggetto. Quindi, per risolvere questo problema, QTP ignora le descrizioni degli oggetti e si concentra sul meccanismo di identificazione intelligente per identificare gli oggetti.

Il meccanismo di identificazione intelligente di QTP utilizza due tipi di proprietà per identificare gli oggetti: proprietà filtro di base e proprietà filtro opzionale.

Proprietà filtro di base: una proprietà di una specifica classe di oggetto di test i cui valori cambiano quando cambia il significato reale dell'oggetto originale.

Proprietà filtro opzionali: aiuta anche a identificare gli oggetti di una particolare classe le cui proprietà cambiano spesso, ma se non sono più applicabili, puoi ignorarlo.

È possibile creare un file ZIP degli script nel computer di origine che può essere importato nel computer di destinazione di QTP utilizzando la funzione "Genera script". Per usufruire di questa funzione, vai alla scheda Strumenti / Opzioni delle impostazioni del test di identificazione degli oggetti.

No! Non possiamo aprire due istanze di QTP in una singola macchina su cui lavorare, ma la stessa QTP può funzionare su più istanze dell'Application Under Test (AUT) e gestisce più finestre del browser IE contemporaneamente.

Sintassi per importare xls in QTP -

DataTable.ImportSheet "..\..\TestData\Input.xls",1,dtGlobalSheet

Syntax to export xls into QTP,

DataTable.ExportSheet "..\..\Results\Output.xls","Global"

SetToProperty è un metodo standard di QTP che modifica temporaneamente la proprietà di un oggetto memorizzato nell'Object Repository.

Il ritardo di temporizzazione standard per l'applicazione basata sul Web è di 60 secondi che può essere modificato dalla finestra di dialogo Impostazioni di prova.

La sintassi corretta per scrivere i dati nel file Excel in UFT è:

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 sta per Test Shared Repository, utilizzato per condividere repository di oggetti.

Seguire i passaggi indicati di seguito per generare il file TSR -

Per prima cosa, apri il repository di oggetti, quindi vai al menu file. Quindi, esporta l'opzione oggetti locali e selezionala. UFT aprirà la finestra di dialogo per salvare il file.tsr; dare il percorso desiderato per salvare il file.

I passaggi precedenti genereranno il file .tsr in UFT.

È uno strumento integrato standard fornito da QTP per convertire le azioni in componenti del processo aziendale.

UFT offre tre modi per ottenere il conteggio delle righe dalla tabella web.

  • Utilizzo della proprietà dell'oggetto webtable - rowcount

  • Utilizzando GetROProperty

  • Utilizzando HTML DOM + UFT

Esistono due modi per esportare la tabella dati in Excel:

  • DataTable.Export ("C: \ export.xls")

  • DataTable.ExportSheet "C: \ mysheet.xls" (crea il nuovo file in assenza di file excel)

QTP supporta tre tipi di variabili d'ambiente:

  • Built-in (sola lettura)

  • Definito dall'utente interno (sola lettura)

  • Esterno definito dall'utente (lettura / scrittura)

La sintassi indicata di seguito utilizzata per recuperare la variabile di ambiente

Environment.Value( "name") = "TutorialPoints"
                  OR
Environment.Value( "OS") = " TutorialPoints"

Mentre

Environment.Value ("name") La sintassi restituirà il nome come TutorialPoints

Environment.Value ("OS") Questo restituirà il tuo sistema operativo

In Bitmap checkpoint, l'utente può confrontare due bitmap complete e parte delle bitmap da pixel a pixel.

In Image checkpoint, l'utente può solo controllare i valori della proprietà Image

Differenza tra file qfl e vbs -

  • qfl è un file di libreria di funzioni di test rapido mentre vbs è il file vbscript di Microsoft

  • qfl è un file non eseguibile mentre vbs è un file eseguibile

  • Per utilizzare il file qfl in UFT, è necessario associare il file qfl dall'impostazione di test, mentre il file vbs può essere associato solo all'istruzione "esegui file".

La sintassi corretta per scrivere dati su file di testo in UFT è:

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

L'estensione di una libreria di funzioni è ".QFL".

QTP non esegue iterazioni basate sul foglio dati locale, esegue iterazioni basate sul foglio dati globale, quindi; l'iterazione del test sarà solo una volta sul foglio dati globale.

Il codice riportato di seguito aiuta nell'invio di e-mail da 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

Seguire il codice riportato di seguito per ottenere i dati dal database -

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

Ogni volta che il repository di oggetti cresce, inizia a dare scarse prestazioni a causa delle sue dimensioni aumentate e UFT deve affrontare problemi nell'identificazione degli oggetti dal repository di oggetti, la programmazione descrittiva (nota anche come descrizione programmatica) fornisce un modo per identificare gli oggetti ed eseguire operazioni su oggetti che non sono presenti nel repository di oggetti. La programmazione descrittiva include il nome della proprietà e il valore della proprietà. Esegue operazioni su oggetti dell'applicazione che sono molto dinamici e per eseguire operazioni sull'applicazione in fase di esecuzione senza avere la conoscenza delle proprietà uniche dell'oggetto.

A volte, QTP non riconosce gli oggetti di un'applicazione che sono stati considerati come oggetti standard per un'applicazione. QTP considera quegli oggetti come oggetti virtuali e li associa a classi standard, quegli oggetti possono essere un pulsante o una casella di controllo. Durante il runtime, QTP copia l'azione dell'utente sull'oggetto virtuale e il risultato del test visualizza l'oggetto virtuale come un oggetto di classe standard.