Kako koristiti Transakcije u QTP/UFT

⚡ Pametni sažetak

Transakcije u UFT Jedna mjera koliko dugo traje izvođenje odabranog dijela testa, pomoću prelamanjaping ti koraci između početne i završne naredbe koji izvještavaju o trajanju u rezultatima izvršavanja.

  • 🔘 Svrha: Transakcija umnožava jedan poslovni tok, poput rezervacije leta, umjesto cijelog testa.
  • ☑️ Umetanje: Izbornik Umetanje dodaje naredbe Početak transakcije i Završetak transakcije oko odabranih koraka.
  • ✅ izjave: Services.StartTransaction i Services.EndTransaction rade isti posao izravno u Editoru.
  • 🧪 Rezultati: Završna izjava prikazuje ime, status, ukupno trajanje i izgubljeno vrijeme.
  • 🛠️ Gniježđenje: Transakcije mogu biti ugniježđene, ali dvije otvorene transakcije nikada ne smiju dijeliti jedno ime.
  • ⚠️ Integracija: LoadRunner i Business Process Monitor samo za čitanje podataka snimljenih unutar transakcije.

Kako koristiti Transakcije u QTP UFT

In UFT jedan/QTPMožete izmjeriti koliko je vremena potrebno za izvođenje dijela testa definiranjem Transakcije. Transakcije unutar testa definirate tako da odgovarajuće dijelove testa priložite početnim i završnim naredbama transakcije.

Transakcije se mogu umetnuti bilo gdje u skriptu, a ne postoji ograničenje broja transakcija koje se mogu dodati testu.

⚠️ Naziv proizvoda: alat se isporučuje kao HP QuickTest Professional (QTP), postao je HP, a zatim Micro Focus Unified Functional Testing, a danas ga prodaje OpenText, čije ga trenutne stranice pomoći nazivaju OpenText Funkcionalno testiranje. Transakcije rade na isti način u svakom od tih izdanja.

Kako umetnuti transakcije u QTP?

Također možete umetnuti transakciju unutar transakcije

Sljedeći video vodi vas kroz korake za umetanje transakcije UFT Jedan.

Kliknite ovdje ako video nije dostupan

Na primjer, možete zabilježiti vrijeme potrebno za rezervirati let.

  1. In QTP, odaberite odgovarajuću državu u kojoj želite započeti transakciju.
  2. Odaberite Insert Start Transaction. Pokrenite dijaloški okvir transakcije Box otvori
  3. Dajte transakciji odgovarajući naziv, recite "Vrijeme rezervacije"
  4. Izjava o početku transakcije dodaje se u test
  5. Odaberite državu u kojoj želite završiti transakciju
  6. Kliknite Umetni > Završi transakciju
  7. Dijalog završetka transakcije Box Otvara se s popisom svih dostupnih transakcija
  8. Pritisnite U redu. Dodana je izjava o završetku transakcije
  9. Pokrenimo test
  10. U rezultatima, izjava o završnoj transakciji daje vrijeme potrebno za umetanje naloga

Bilješka: isti dijaloški okviri dostupni su iz Prikaz ključnih riječii Korak Generator umeće identične naredbe bez otvaranja izbornika Umetanje.

Izvodi o transakcijama u uređivaču

Gornji dijaloški okviri pišu dva VBScript linije u test. Typing Brže je sami ih napraviti u Editoru kada je uzorak poznat, a to je i jedina opcija kada korake generira kod.

Services.StartTransaction "Booking Time"

' the steps that book the flight go here

Services.EndTransaction "Booking Time"

Obje metode pripadaju objektu Usluge. Početna naredba prima jedan argument, a završna naredba prima opcionalni drugi.

Izjava argumenti Ono što se također
Usluge.PokretanjeTransakcije Ime Započinje mjerenje vremena u toj točki trčanja
Usluge.ZavršetakTransakcije Ime, [Status] Zaustavlja mjerenje i bilježi rezultat

Neobavezni status određuje kako se transakcija ocjenjuje. Izostavljanje istog je isto što i prolaz. automobil.

  • automobil — prolazi osim ako se nije dogodila greška između dvije naredbe. Ovo je zadana vrijednost.
  • Proći — uvijek završava statusom Prolaz.
  • Podbaciti — uvijek završava statusom Neuspjeh.
Services.StartTransaction "Booking Time"
Wait 1
Services.EndTransaction "Booking Time", Pass

Čitanje rezultata transakcije

Nakon što test završi, korak Završetak transakcije u rezultatima izvršavanja nosi četiri vrijednosti koje objašnjavaju mjerenje.

Polje rezultata Značenje
Naziv transakcije Ime navedeno u početnoj naredbi
Krajnji status Prolaz ili pad, određuje se argumentom statusa ili automatskim odabirom
Ukupno trajanje Proteklo vrijeme između početne i završne naredbe
Izgubljeno vrijeme Vrijeme unutar trajanja koje UFT Jedan je sam dodao

Izgubljeno vrijeme je važno jer alat izvršava pozadinske procese dok je transakcija otvorena.tracIz ukupnog trajanja procijenite koliko bi samo aplikacija zahtijevala, što je broj koji vrijedi usporediti između verzija.

Trajanje jednog korisnika je funkcionalna referentna vrijednost, a ne brojka opterećenja. Konkurencija se mjeri pomoću ispitivanje performansi alat, a transakcija koja je u redu za jednog korisnika i dalje može propasti za manje od stotinu.

Ugniježđene i distribuirane transakcije

Popis koraka izvora navodi da se transakcija može nalaziti unutar druge, što je način na koji se spori podkorak izolira bez gubitka vremena cijelog tijeka. Vanjska transakcija nastavlja se izvršavati dok se unutarnja otvara i zatvara.

Dva pravila osiguravaju sigurnost gniježđenja.

  • Svako ime treba odgovarajući par, a početna naredba mora se pojaviti prije završne naredbe.
  • Samo jedna transakcija s određenim nazivom može biti otvorena istovremeno. Otvaranje druge transakcije s istim nazivom završava prvu sa statusom Neuspjeh.

Distribuirana transakcija ide dalje i obuhvaća dva testa: Usluge.Pokretanje distribuirane transakcije otvara ga u prvom testu i Usluge.ZavršetakDistribuiraneTransakcije zatvara ga u drugom, podudarajući se s jedinstvenim ID-om, a ne s imenom. Postoji za Business Process Monitor i LoadRunner scenariji koji čitaju samo podatke zabilježene unutar transakcije i ignoriraju sve izvan nje.

Kada korak unutar transakcije legitimno može propasti, uparite transakciju s scenarij oporavka tako da run dođe do krajnje naredbe umjesto do zaustavljanjaping na pola puta.

Pitanja i odgovori

Transakcija prijavljuje imenovani rezultat sa statusom u rezultate izvršavanja i u LoadRunner. MercuryTimer mjeri samo protekle milisekunde unutar skripte, koje zatim sami prijavljujete ili pretvarate.

Vremenski raspored nepovezane operacije s MercuryTimer, a zatim proslijedite vrijednost Services.AddWastedTime. Izgubljeno vrijeme oduzima se od svake otvorene transakcije, tako da prijavljeno trajanje odražava samo tijek koji se testira.

Pogreška prije završne naredbe zaustavlja izvođenje prema zadanim postavkama. U oknu Izvođenje u postavkama testiranja postavite opciju pogreške za prelazak na sljedeći korak tako da se završna naredba i dalje dosegne i transakcija zabilježi.

U LoadRunner kontroleru, a ne u prozoru Run Results. Šalju se samo koraci unutar transakcije, tako da sve izvan početnog i završnog para nikada ne dospijeva do izvješća o performansama.

Da. Services.SetTransaction uzima naziv, trajanje u sekundama i status, što omogućuje skripti da zabilježi mjerenje koje je sama izračunala umjesto onog koje je alat mjerio.

Modeli strojnog učenja određuju bazu svake imenovane transakcije u svim izradama i podižu upozorenje kada trajanje prijeđe normalan raspon, uočavajući sporu regresiju koju bi sam status prolaza ili neuspjeha sakrio.

Da. GitHub kopilot dovršava par Services.StartTransaction i Services.EndTransaction iz komentara, iako je naziv transakcije i konstanta statusa i dalje potrebno provjeriti u odnosu na korištenu konvenciju imenovanja.

Ne postoji tehničko ograničenje, ali jedna transakcija po poslovnom toku održava izvješće čitljivim. Deseci sitnih transakcija zatrpavaju važan broj pod šumom mjerenja.

Sažmite ovu objavu uz: