LoadRunner-Transaksjoner, Tekst-Og Bildekontroller, Kommentarer Og Rendezvous-Poeng

Introduksjon til grunnleggende forbedringer Av VuGen-Skriptet:

vi utforsket Korrelasjon I LoadRunner i detalj i vår forrige opplæring i Denne Komplette LoadRunner-Opplæringsopplæringen.

i de to siste opplæringene jobbet vi med å håndtere data i Et VuGen-skript (Korrelasjon og Parameterisering).

i Denne LoadRunner-opplæringen ser vi de andre grunnleggende forbedringene (oppført nedenfor) som kreves for skriptet vårt:

  1. Transaksjoner – for å måle hastighet og responstid for brukerens handlinger.
  2. Tekst-og Bildesjekker – for å sikre at svaret som returneres er riktig.
  3. Rendezvous poeng – å gjøre Vusers utføre en oppgave samtidig.

=> Klikk Her For Komplett Serie Av Loadrunner Tutorials

transaksjoner, tekst og bilde sjekker, kommentarer og rendezvous poeng  transaksjoner, tekst og bilde sjekker, kommentarer og rendezvous poeng

Transaksjoner I VuGen Script

bare replay av ytelse skript vil bare sette en belastning på programmet, men måler ikke noe. Det endelige målet for noen ytelse script er å injisere last og måle hastigheten og responstiden for brukerhandlinger på programmet.

for eksempel, hvor mye tid et produktsøk tok når 100 brukere er på programmet, hvor mange rapporter genereres i en tid på si 15 minutter og så videre. For å måle disse må vi sette inn transaksjoner i Et VuGen-skript (etter testen kan vi se frekvensen og responstiden for disse transaksjonene i resultatene).

‘en transaksjon er en ende-til-ende-måling av en brukerhandling (eller en gruppe brukerhandlinger) i et program’.

Transaksjoner kan settes inn på to måter:

  1. Under Opptak
  2. etter Opptak (der vi manuelt setter inn transaksjonsfunksjonene i skriptet)

La oss sette inn transaksjon for’ Logg inn ‘brukerhandling på vår’ Web Tours ‘ søknad.

i vår første veiledning så vi hvordan du tar opp brukerhandlinger. Under opptak, etter å ha skrevet Inn ‘Brukernavn ‘og’ Passord ‘På Påloggingssiden, like før du klikker På’ Logg inn ‘- knappen, klikker du på’ Sett Inn Start Transaksjon ‘ – ikonet på den flytende opptakslinjen.

1.Under opptak

VuGen ber om transaksjonsnavn. Skriv inn et meningsfylt navn. Vi har gitt ‘Logg inn’ her, men det er en god praksis å følge en konvensjon som dette(transaksjonsnummer, Scenarionavn, brukerhandling etc.): 01_WebTours_Launch 02_WebTours_Login (og så videre).

2.VuGen ber om transaksjonsnavn

klikk Nå På Logg inn-knappen.

3.Klikk Nå På Innloggingsknappen

Når vi kommer til hjemmesiden (hovedsiden), klikk på ‘Sett Inn Slutttransaksjon’ – ikonet på den flytende opptakslinjen.

4.klikk på' Sett Inn Slutttransaksjon ' - ikonet på den flytende opptakslinjen.

Velg transaksjonen som vi ønsker å avslutte (‘Logg inn’ transaksjon her).

5. 'Logg inn' transaksjon som vi vil avslutte

Stopp opptaket og se det genererte skriptet. Vi kan se at transaksjonsstart og transaksjonssluttfunksjoner settes inn i skriptet(uthevet i gult), og all forespørsel (er) som svarer til ‘Logg inn’ brukerhandling er vedlagt mellom disse funksjonene.

lr_start_transaction("Login");web_submit_data("login.pl","Action=http://127.0.0.1:1080/cgi-bin/login.pl","Method=POST","TargetFrame=","RecContentType=text/html","Referer=http://127.0.0.1:1080/cgi-bin/nav.pl?in=home","Snapshot=t3.inf","Mode=HTML",ITEMDATA,"Name=userSession", "Value=123530.624949372zDftVAzpfcAiDDDDDiVctpzDQVcf", ENDITEM,"Name=username", "Value=jojo", ENDITEM,"Name=password", "Value=bean", ENDITEM,"Name=JSFormSubmit", "Value=off", ENDITEM,"Name=login.x", "Value=69", ENDITEM,"Name=login.y", "Value=8", ENDITEM,LAST);lr_end_transaction("Login",LR_AUTO);

syntaksen til funksjonene ‘transaksjonsstart’ og ‘transaksjonsslutt’ er ganske enkel. Begge har transaksjonsnavn som det første argumentet. ‘End transaction’ – funksjonen har et annet attributt – ‘LR_AUTO’, dette instruerer VuGen om Å Passere eller Mislykkes en transaksjon automatisk (i stedet for at vi eksplisitt angir en betingelse for et pass eller mislykkes).

hvis load runner møter noen feil i å utføre forespørsler i en transaksjon så mislykkes transaksjonen ellers passerer transaksjonen.

Tekst – Og Bildesjekker I VuGen Script

Tekstsjekker brukes til å kontrollere om svaret som returneres for forespørselen, er riktig eller ikke. I ‘Correlation’ opplæringen så vi at Noen Ganger VuGen kanskje ikke viser noen feil, men det returnerte svaret kan ikke være det riktige. Så, for å sikre at svaret er riktig, bruker vi tekstkontroller.

for eksempel, når vi logger inn på Web Tours-programmet, går vi til hjemmesiden. La oss bekrefte i skriptet at vi får riktig svar (hjemmeside) eller ikke når vi logger inn.

for å gjøre dette må vi identifisere noe tekst i svaret (hjemmeside her) som kan si om svaret er riktig eller ikke. Velkommen er en slik tekst.

6.Tekst-Og Bildekontroller

for tekstkontroll bruker vi ‘web_reg_find’ – funksjonen like før forespørselen.

syntaksen til denne funksjonen er:

web_reg_find("Text=","SaveCount=","Fail=",LAST);

her har vi tre attributter (se VuGen hjelp for å få den komplette listen over attributter):

‘Tekst’ – Brukes til å angi hvilken tekst du skal søke etter.

‘ SaveCount – – Lagrer antall forekomster av den angitte teksten i en parameter som vi angir.

‘Fail’ – Tar en av de to verdiene – ‘Found’ og ‘NotFound’ og mislykkes skriptet tilsvarende.

så funksjonen, web_reg_find (“Text=Welcomecount”,”SaveCount=WelcomeCount”,” Fail=NotFound”, LAST) søker etter teksten “Velkommen” i svaret og lagrer antall forekomster i parameteren “WelcomeCount” (og mislykkes skriptet hvis teksten ikke blir funnet).

skriptet ser slik ut:

web_reg_find("Text=Welcome","SaveCount=WelcomeCount","Fail=NotFound",LAST);web_submit_data("login.pl","Action=http://127.0.0.1:1080/cgi-bin/login.pl","Method=POST","TargetFrame=body","RecContentType=text/html","Referer=http://127.0.0.1:1080/cgi-bin/nav.pl?in=home","Snapshot=t2.inf","Mode=HTML",ITEMDATA,"Name=userSession", "Value=123531.149939247zDftVDDpfcfDiVctpiAVVf", ENDITEM,"Name=username", "Value=jojo", ENDITEM,"Name=password", "Value=bean", ENDITEM,"Name=JSFormSubmit", "Value=off", ENDITEM,"Name=login.x", "Value=66", ENDITEM,"Name=login.y", "Value=12", ENDITEM,LAST);

nå hvis vi spiller skriptet, får Vi en feil for påloggingsforespørselen (se i relay log) fordi VuGen ikke fant teksten som vi angav, i svaret. Dette skyldes at vi ikke fikk den riktige hjemmesiden(som vist i ‘run-time viewer’).

7.hvis vi spiller av skriptet, får vi en feil for påloggingsforespørselen

la Oss nå rette skriptet vårt (korrelere userSession) og spille av skriptet igjen.

 web_reg_find("Text=Welcome","SaveCount=WelcomeCount","Fail=NotFound",LAST);web_submit_data("login.pl", "Action=http://127.0.0.1:1080/cgi-bin/login.pl", "Method=POST", "TargetFrame=body", "RecContentType=text/html", "Referer=http://127.0.0.1:1080/cgi-bin/nav.pl?in=home", "Snapshot=t2.inf", "Mode=HTML", ITEMDATA, "Name=userSession", "Value={corUserSession}", ENDITEM, "Name=username", "Value=jojo", ENDITEM, "Name=password", "Value=bean", ENDITEM, "Name=JSFormSubmit", "Value=off", ENDITEM, "Name=login.x", "Value=66", ENDITEM, "Name=login.y", "Value=12", ENDITEM, LAST);

Denne gangen ser Vi ingen feil i replay-loggen, men ser en melding om at vår tekstkontroll var vellykket. Så vi fikk riktig svar denne gangen (som det er bekreftet av ‘runtime viewer’).

8.korriger skriptet vårt (korrelere brukerensesjon) og spill av skriptet igjen.

Vi kan kombinere tekst sjekker med transaksjoner og gjøre VuGen passere en transaksjon hvis tekst sjekk er vellykket og mislykkes en transaksjon hvis en tekst sjekk er mislyktes.

dette er vist nedenfor:

lr_start_transaction("Login");web_reg_find("Text=Welcome","SaveCount=WelcomeCount",LAST);web_submit_data("login.pl", "Action=http://127.0.0.1:1080/cgi-bin/login.pl", "Method=POST", "TargetFrame=body", "RecContentType=text/html", "Referer=http://127.0.0.1:1080/cgi-bin/nav.pl?in=home", "Snapshot=t2.inf", "Mode=HTML", ITEMDATA, "Name=userSession", "Value={corUserSession}", ENDITEM, "Name=username", "Value=jojo", ENDITEM, "Name=password", "Value=bean", ENDITEM, "Name=JSFormSubmit", "Value=off", ENDITEM, "Name=login.x", "Value=66", ENDITEM, "Name=login.y", "Value=12", ENDITEM, LAST);if(atoi(lr_eval_string("{WelcomeCount}"))>0){lr_end_transaction("Login",LR_PASS);}else{lr_end_transaction("Login",LR_FAIL);}

Vi har brukt ‘if statement’ her med ‘SaveCount’ attributt. Parameteren WelcomeCount (som lagrer antall forekomster av teksten) brukes som en betingelse for å passere / mislykkes transaksjonen. ‘Lr_pass’ og ‘LR_FAIL’ attributter av transaksjonsfunksjoner brukes til å eksplisitt passere og mislykkes (henholdsvis) en transaksjon.

Merk: vi brukte to nye funksjoner her – ‘atoi’ og ‘lr_eval_string’. Vi skal snakke om disse funksjonene senere.

litt mer informasjon om kombinasjonen av’ web_reg_find ‘funksjonsattributter:

#1) Hvis bare’ Tekst ‘ attributt brukes –

Eksempel: web_reg_find (“Text=Welcome”, LAST) –

VuGen søker etter teksten og mislykkes skriptet hvis søket mislykkes.

#2) hvis bare’ Text ‘og’ SaveCount ‘ attributter brukes –

Eksempel: web_reg_find (“Text=Welcomecount”, “SaveCount=WelcomeCount”, LAST) – VuGen søker etter teksten og lagrer antall forekomster (selv om det er null) i den angitte parameteren (mislykkes ikke skriptet hvis søket mislykkes).

# 3) hvis bare’ Tekst ‘og’ Fail ‘ attributter brukes –

Eksempel: web_reg_find (“Text=Welcome”,” Fail=NotFound”, LAST) – VuGen søker etter teksten og mislykkes skriptet hvis teksten er funnet/ikke funnet.

Tekstkontroller kan også settes inn under opptak ved hjelp Av’ Sett inn tekstkontroll ‘ – ikonet på den flytende opptaksfeltet. Dette vil sette inn samme ‘web_reg_find’ – funksjon i skriptet.

9.'Sett inn tekst sjekk' ikon

Men det er bedre at vi setter inn denne funksjonen manuelt som vi vil ha bedre kontroll hovedsakelig på attributtene.

vi har forstått tekstkontroll klart, la oss nå gå til bildekontroll.

Bildekontroll brukes til å verifisere tilstedeværelsen av et angitt bilde i et svar. ‘web_image_check’ – funksjonen brukes til bildekontroll. Denne funksjonen må settes etter forespørselen(i svaret som vi forventer bildet).

Eksempel på denne funksjonen:

web_image_check("Image","Src=/WebTours/images/flights.gif",LAST)

Hvor det første attributtet er et meningsfylt navn og det andre attributtet (‘Src’) er bildenavnet / lenken (se VuGen hjelp for å få den komplette listen over attributter).

Kommentarer I VuGen Script

Kommentarer i En VuGen script kan legges inn under opptak og også manuelt etter skriptet er registrert.

under opptak klikker du på’ Sett Inn Kommentar ‘ – ikonet på den flytende opptakslinjen.

10.'Sett Inn Kommentar' ikon

Skriv inn kommentaren (si ‘Logg inn’ her).

11.Skriv inn kommentaren

etter opptak kan vi se kommentarene i skriptet som vist nedenfor.

/* Login */web_submit_data("login.pl", "Action=http://127.0.0.1:1080/cgi-bin/login.pl", "Method=POST", "TargetFrame=body", "RecContentType=text/html", "Referer=http://127.0.0.1:1080/cgi-bin/nav.pl?in=home", "Snapshot=t6.inf", "Mode=HTML",

I VuGen kan en enkelt linje kommenteres ved å bare sette ‘/ / ‘ før linjen som vist nedenfor:

// web_add_cookie("SRCHD=AF=IESS3N; DOMAIN=www.bing.com");web_add_cookie("SRCHUID=V=2&GUID=89730C3AA700412BAB917005DE9F5F47&dmnchg=1; DOMAIN=www.bing.com");web_add_cookie("SRCHUSR=DOB=20180312; DOMAIN=www.bing.com");

og flere linjer kan kobles ved å sette ‘/ * ‘i starten og’ * / ‘ til slutt (som vist nedenfor)

/* web_add_cookie("SRCHD=AF=IESS3N; DOMAIN=www.bing.com");web_add_cookie("SRCHUID=V=2&GUID=89730C3AA700412BAB917005DE9F5F47&dmnchg=1; DOMAIN=www.bing.com");web_add_cookie("SRCHUSR=DOB=20180312; DOMAIN=www.bing.com"); */

Merk: i eksemplene vist ovenfor kommenterte vi cookie-funksjonene (web_add_cookie). Vi vil snakke om cookie funksjoner senere i denne opplæringen serien.

det er en god praksis å sette inn kommentarer på hvert trinn under opptak fordi det vil hjelpe oss å relatere forespørslene i skriptet til brukerhandlingene på programmet.

Rendezvous Punkt I VuGen Script

hvis vi har et scenario der et større antall brukere utfører en handling samtidig på programmet (som å sjekke resultater), og hvis vi må simulere det samme i vår ytelsestest, kan vi bruke Et ‘Rendezvous punkt’.

Et ‘Rendezvous point’ er en enkelt og enkel funksjon i Et VuGen-skript som instruerer load runner (under en test med flere brukere) å vente på et angitt trinn i skriptet til alle Vusers (utfører skriptet) kommer til det trinnet slik at etterfølgende forespørsel kan utføres samtidig.

syntaksen for Rendezvous-funksjonen er:

lr_rendezvous("MeaningfulName"); 

denne funksjonen kan settes inn under opptak og også manuelt etter at skriptet er registrert.

Anta at vi vil legge en samtidig belastning på betalingstrinnet i vår’ Web Tours ‘ – applikasjon. Under opptak på det trinnet (før du sender betalingsdetaljene ), klikk på ‘Sett Inn Rendezvous’ – ikonet på den flytende opptakslinjen.

12.betalingsdetaljer

og skriv inn rendezvous point-navnet(hvilket som helst meningsfullt navn).

13.skriv inn rendezvous punktnavnet

etter opptak kan vi se rendezvous-funksjonen i skriptet som dette.

lr_rendezvous("Payment");web_submit_data("reservations.pl_3","Action=http://127.0.0.1:1080/cgi-bin/reservations.pl","Method=POST","TargetFrame=","RecContentType=text/html","Referer=http://127.0.0.1:1080/cgi-bin/reservations.pl","Snapshot=t13.inf","Mode=HTML",ITEMDATA,"Name=firstName", "Value=Jojo", ENDITEM,"Name=lastName", "Value=Bean", ENDITEM,"Name=address1", "Value=1st Lane, Down Street", ENDITEM,"Name=address2", "Value=567123", ENDITEM,"Name=pass1", "Value=Jojo Bean", ENDITEM,"Name=creditCard", "Value=123456789101", ENDITEM,"Name=expDate", "Value=0520", ENDITEM,"Name=oldCCOption", "Value=", ENDITEM,"Name=numPassengers", "Value=1", ENDITEM,"Name=seatType", "Value=Coach", ENDITEM,"Name=seatPref", "Value=None", ENDITEM,"Name=outboundFlight", "Value=020;338;05/03/2018", ENDITEM,"Name=advanceDiscount", "Value=0", ENDITEM,"Name=returnFlight", "Value=", ENDITEM,"Name=JSFormSubmit", "Value=off", ENDITEM,"Name=.cgifields", "Value=saveCC", ENDITEM,"Name=buyFlights.x", "Value=63", ENDITEM,"Name=buyFlights.y", "Value=12", ENDITEM,LAST);

nå når vi kjører dette skriptet med flere brukere I Kontrolleren, vil skriptet bli utført av Vusers uavhengig, men Vusers vil vente på Dette Betalingstrinnet til alle (eller en prosentandel Av Vusers definert i Rendezvous policy) når dette trinnet, hvoretter de utfører dette trinnet samtidig.

vi vil se mer på rendezvous policy (alternativer) I Kontrolleren opplæringen.

Konklusjon

Inntil nå har vi diskutert Korrelasjon og Parameterisering i tidligere tutorials og Transaksjoner, Tekst / Bilde sjekker, Kommentarer og Rendezvous poeng i denne opplæringen, har vi også dekket de viktigste script ekstrautstyr metoder.

i vår neste veiledning vil vi se noen flere skriptutfordringer sammen med måtene å håndtere dem.

=> Besøk Her For Komplett Serie Av LoadRunner Tutorials

FORRIGE Tutorial / NESTE Tutorial

Leave a Reply