Sådan bruger du transaktioner i QTP/UFT
⚡ Smart opsummering
Transaktioner i UFT Et mål for, hvor lang tid en valgt sektion af en test tager at køre, ved hjælp af wrapping de trin mellem en startsætning og en slutsætning, der rapporterer varigheden i kørselsresultaterne.
In UFT Én/QTPDu kan måle, hvor lang tid det tager at køre en del af din test, ved at definere transaktioner. Du definerer transaktioner i din test ved at omslutte de relevante dele af testen med start- og sluttransaktionsudsagn.
Transaktioner kan indsættes hvor som helst i scriptet, og der er ingen grænse for antallet af transaktioner, der kan tilføjes til en test.
⚠️ Produktnavngivning: værktøjet blev leveret som HP QuickTest Professional (QTP), blev til HP og derefter Micro Focus Unified Functional Testing, og sælges i dag af OpenText, hvis nuværende hjælpesider kalder det OpenText Funktionel testning. Transaktioner fungerer på samme måde i alle disse udgivelser.
Sådan indsætter du transaktioner i QTP?
Du kan også indsætte en transaktion i en transaktion
Følgende video fører dig gennem trinene for at indsætte en transaktion UFT En.
Klik link. hvis videoen ikke er tilgængelig
For eksempel vil du måske notere den tid, det tager at Bestil en flybillet.
- In QTP, vælg den relevante stat, hvor du vil starte din transaktion.
- Vælg Indsæt starttransaktion. Start transaktionsdialog Box åbner
- Giv transaktionen et passende navn, sig "Booking Time"
- En starttransaktionserklæring tilføjes i testen
- Vælg den stat, hvor du vil afslutte transaktionen
- Klik på Indsæt > Afslut transaktion
- Dialogboksen Afslut transaktion Box Åbner med listen over alle tilgængelige transaktioner
- Klik på Okay. En sluttransaktionserklæring tilføjes
- Lad os køre testen
- I resultater angiver sluttransaktionserklæringen den tid, det tager at indsætte ordren
Bemærk: De samme dialogbokse nås fra Søgeordsvisning, og Trinet Generator indsætter identiske sætninger uden at åbne Indsæt-menuen.
Transaktionsopgørelser i editoren
Dialogboksene ovenfor skriver to vbscript linjer ind i testen. Takping at gøre dem selv i editoren er hurtigere, når mønsteret er kendt, og det er den eneste mulighed, når trinnene genereres af kode.
Services.StartTransaction "Booking Time" ' the steps that book the flight go here Services.EndTransaction "Booking Time"
Begge metoder tilhører Services-objektet. Start-sætningen tager ét argument, og end-sætningen tager et valgfrit andet argument.
| Statement | argumenter | Hvad gør den |
|---|---|---|
| Services.StartTransaction | Navn | Starter tidsmålingen på det tidspunkt i løbet |
| Services.EndTransaction | Navn, [Status] | Stopper målingen og registrerer resultatet |
Den valgfrie status bestemmer, hvordan transaktionen bedømmes. At udelade den er det samme som at bestå. Auto.
- Auto — bestås, medmindre der opstod en fejl mellem de to sætninger. Dette er standardværdien.
- Pass — slutter altid med statussen Bestået.
- Fail — slutter altid med statussen Fejl.
Services.StartTransaction "Booking Time" Wait 1 Services.EndTransaction "Booking Time", Pass
Læsning af transaktionsresultater
Når testen er færdig, indeholder trinnet "Afslut transaktion" i kørselsresultaterne fire værdier, der forklarer målingen.
| Resultatfelt | Betydning |
|---|---|
| Transaktionsnavn | Navnet angivet i startsætningen |
| Slutstatus | Bestået eller ikke bestået, bestemt af statusargumentet eller af Auto |
| Samlet varighed | Forløbet tid mellem start- og slutsætningerne |
| Spildt tid | Tid inden for den varighed, der UFT En selv tilføjede |
Spildtid er vigtig, fordi værktøjet kører baggrundsprocesser, mens transaktionen er åben.tracUd fra den samlede varighed kan du estimere, hvad applikationen alene ville have taget, hvilket er det tal, der er værd at sammenligne mellem builds.
En enkeltbrugervarighed er et funktionelt benchmark, ikke et belastningstal. Samtidighed måles ved en test af ydeevne værktøj, og en transaktion, der er fin for én bruger, kan stadig kollapse under hundrede.
Indlejrede og distribuerede transaktioner
Kildetrinlisten bemærker, at en transaktion kan ligge inden for en anden, hvilket er måden, hvorpå et langsomt undertrin isoleres uden at miste timingen af hele flowet. Den ydre transaktion fortsætter med at køre, mens den indre åbner og lukker.
To regler holder redebygningen sikker.
- Hvert navn skal have et matchende par, og startsætningen skal stå før dens slutsætning.
- Kun én transaktion med et givet navn må være åben ad gangen. Åbning af en anden transaktion med samme navn afslutter den første med statussen Mislykket.
En distribueret transaktion går videre og spænder over to tests: Services.StartDistributedTransaction åbner den i den første test og Services.EndDistributedTransaction lukker den i det andet, matchet af et unikt ID i stedet for navn. Den findes til Business Process Monitor og LoadRunner scenarier, som kun læser de data, der er registreret i en transaktion, og ignorerer alt uden for en.
Når et trin i en transaktion legitimt kan mislykkes, skal transaktionen parres med en genopretningsscenarie så løbet når slutsætningen i stedet for stopping halvvejs.
