important loadrunner functions used vugen scripts with examples
Belangrijke LoadRunner-functies die voornamelijk worden gebruikt in VuGen-scripts met syntaxis en voorbeelden:
VuGen Scripting-uitdagingen werden in detail uitgelegd in onze eerdere tutorial in het Online gratis LoadRunner-trainingsserie
Tijdens onze reis met de LoadRunner VuGen kwamen we tot dusver veel voorgedefinieerde functies tegen (en natuurlijk zagen we ook hoe we onze eigen functies moesten schrijven).
In deze tutorial zullen we kort ingaan op de belangrijke ‘vooraf gedefinieerde’ LoadRunner-, protocolspecifieke en C-taalfuncties die we meestal gebruiken in VuGen-scripts / scenario's.
Klik hier voor een complete serie LoadRunner-zelfstudies
Laten we deze functies in drie categorieën indelen:
- LoadRunner (LR) -functies
- Protocolspecifieke (Web - HTTP / HTML) functies
- C taalfuncties
Laten we een voor een verkennen!
Wat je leert:
- LoadRunner (LR) -functies
- Protocolspecifieke functies
- C Taalfuncties
- Gevolgtrekking
- Aanbevolen literatuur
LoadRunner (LR) -functies
Deze functies zijn de algemene LoadRunner-functies die gemeenschappelijk zijn voor alle protocollen:
1) lr_eval_string (): Zoals reeds gezien, retourneert deze functie de invoertekenreeks na evaluatie van eventuele ingesloten parameters.
2) lr_eval_string_ext (): Deze functie maakt een buffer aan en wijst deze toe aan de invoertekenreeks na evaluatie van de ingesloten parameters.
3) lr_save_string (): Zoals reeds gezien, kent deze functie een waarde toe aan de LR parameter / variabele.
4) lr_save_int (): Deze functie wijst een geheel getal toe aan een LR-parameter, zoals hieronder weergegeven:
Voorbeeld:
De parameter ‘numparam’ kan nu worden gebruikt als elke andere LR-parameter.
5) lr_paramarr_random (): Zoals reeds gezien, selecteert deze functie willekeurig een van de waarden uit een parameterarray.
6) lr_paramarr_len (): Deze functie retourneert het aantal elementen in een parameterarray.
Stel dat ‘cFlight’ de parameterarray is met vluchtwaarden, het onderstaande voorbeeld laat zien hoe het aantal elementen van deze array naar een variabele kan worden gekopieerd.
Voorbeeld:
7) lr_paramarr_idx (): Deze functie geeft de waarde van de parameter op een opgegeven locatie in een parameterarray. In een voorbeeld hieronder wordt de derde waarde van de parameterarray in een variabele opgeslagen.
Voorbeeld:
8) lr_db_connect () Dit is een databasefunctie die wordt gebruikt om verbinding te maken met een database.
9) lr_db_disconnect () Dit is een databasefunctie die wordt gebruikt om de verbinding met een database te verbreken.
10) lr_start_transaction () en lr_end_transaction (): Zoals reeds gezien, worden deze functies gebruikt om (respectievelijk) een transactie te starten en te beëindigen.
elf) lr_message () Dit is een berichtfunctie die wordt gebruikt om een bericht (en) naar het logboek en het uitvoervenster te sturen.
12) lr_output_message (): Dit is een berichtfunctie die wordt gebruikt om het bericht / de berichten met details zoals de scriptsectie en het regelnummer te verzenden naar uitvoervensters, logbestanden en andere samenvattingen van testrapporten.
13) lr_log_message () Dit is een berichtfunctie die wordt gebruikt om een bericht (en) naar het Vuser- of agentlogbestand te sturen en niet naar het uitvoervenster.
14) lr_error_message (): Dit is een berichtfunctie die wordt gebruikt om een bericht (en) naar de uitvoervensters, logbestanden en andere samenvattingen van testrapporten te sturen.
vijftien) lr_save_datetime (): Deze functie slaat de huidige datum en tijd (of de datum en tijd met de opgegeven offset) op in een parameter die kan worden gebruikt in ons script als en wanneer dat nodig is.
Voorbeeld:
Actie.c (4): De datum van vandaag is 9 juni 2018
Hieronder is een ander voorbeeld gegeven waarbij de offset van één dag wordt gebruikt:
Actie.c (4): De datum van morgen is 10 juni 2018
16) lr_set_debug_message (): Deze functie verandert het logboekniveau van het bericht (voor een deel van het script) van wat is ingesteld in de Run-Time-instellingen. Zoals hieronder wordt getoond, is een volledige tracering alleen ingeschakeld voor het ‘index.htm’ -verzoek (zelfs als het logniveau is ingesteld op ‘Standaardlogboek’ in de Run-Time-instellingen).
Voorbeeld:
17) lr_abort (): Deze functie breekt de uitvoering van het script af na het uitvoeren van de ‘vuser_end’ sectie. Deze functie is handig wanneer we het script handmatig moeten afbreken vanwege een specifieke foutconditie.
18) lr_exit (): Deze functie geeft Vuser de opdracht om het script dat tijdens de uitvoering wordt uitgevoerd te verlaten en door te gaan volgens de gespecificeerde ‘Script Vervolgopties’.
In het volgende voorbeeld deze functie instrueert Vuser om de huidige iteratie van de globale scriptuitvoering te stoppen en de volgende iteratie te starten.
Hier is een lijst met andere opties voor scriptvoortzetting:
- LR_EXIT_VUSER - Sluit af zonder enige voorwaarde en ga direct naar vuser_end action.
- LR_EXIT_ACTION_AND_CONTINUE - Stop de huidige actie en ga naar de volgende actie.
- LR_EXIT_ITERATION_AND_CONTINUE - Stop de huidige iteratie en ga naar de volgende iteratie.
- LR_EXIT_VUSER_AFTER_ITERATION - Sluit af nadat de huidige iteratierun is voltooid.
- LR_EXIT_VUSER_AFTER_ACTION - Sluit af nadat de huidige actie is voltooid.
19) lr_think_time (): Met deze functie kan een Vuser gedurende een bepaalde tijd pauzeren tussen stappen / acties op het VuGen-script. Dit is om het echte gebruikersgedrag te simuleren van enige tijd nadenken tussen acties / stappen op een applicatie.
Bijvoorbeeld, het volgende laat een Vuser 10 seconden wachten ...
twintig) lr_rendezvous (): Zoals reeds gezien, instrueert deze functie de LoadRunner om op een gespecificeerde stap in het script te wachten tot alle Vusers bij die stap komen, zodat het daaropvolgende verzoek gelijktijdig kan worden uitgevoerd.
eenentwintig) lr_load_dll (): Deze functie wordt gebruikt om een externe dll te laden waardoor een Vuser een externe functie kan aanroepen bij het opnieuw afspelen van het script.
22) lr_save_searched_string (): Deze functie zoekt naar een voorkomen van een string in een buffer en slaat een gedeelte van de buffer na die string op in een parameter.
In het volgende voorbeeld , derde instantie (nummer gedefinieerd in het derde attribuut plus 1) van de tekenreeks 'all' wordt doorzocht in de buffer en de volgende 14 tekens (zesde attribuut) worden opgeslagen in een parameter (vijfde attribuut '1' slaat de spatie over na de zoekopdracht ).
Actie.c (7): De gezochte subtekenreeks is de mannen van de koning.
2. 3) lr_vuser_status_message (): Deze functie stuurt een bericht naar het Vuser-statusgebied van de controller en naar het Vuser-logboek.
24) lr_next_row (): Deze functie werkt op het opgegeven parametergegevensbestand en wordt gebruikt om een actieve rij naar de volgende rij te verplaatsen.
25) lr_advance_param (): Deze functie zorgt ervoor dat het script de volgende beschikbare waarde van de parameter gebruikt door aan kolomnamen te werken.
26) lr_start_timer () en lr_end_timer (): Deze functies worden gebruikt om een timer te starten en te stoppen in een VuGen-script dat het verstrijken van de tijd in seconden berekent.
27) lr_whoami (): Deze functie retourneert informatie over de Vuser (zoals Vuser-id, Vuser-groep).
28) lr_get_vuser_ip (): Deze functie retourneert het IPv4-adres van een Vuser.
29) lr_get_host_name (): Deze functie retourneert de naam van de machine die het script uitvoert.
30) lr_get_master_host_name (): Deze functie retourneert de naam van de machine waarop de controller draait.
31) lr_decrypt (): Deze functie decodeert een gecodeerde string. Het wordt over het algemeen gebruikt om wachtwoorden te decoderen.
32) lr_continue_on_error (): Deze functie specificeert hoe fouten moeten worden afgehandeld om door te gaan met uitvoeren als er een fout optreedt of om de uitvoering van het script af te breken.
In deze sectie hebben we meer in detail besproken over ‘voorgedefinieerde’ functies en ‘LoadRunner’ -functies.
In ons volgende gedeelte zullen we het hebben over de LoadRunner ‘Protocolspecifieke’ en ‘C-taal’ functies.
Protocolspecifieke functies
Deze functies zijn specifiek voor een protocol, in onze discussie zullen we ons beperken tot het bespreken van ‘Web-HTTP / HTML’ -protocol of eenvoudigweg voor ‘Web’ protocolspecifieke functies.
1) web_url (): Deze functie laadt de webpagina die is gespecificeerd door het URL-argument.
2) web_submit_form (): Deze functie verzendt een formulier. En deze functie wordt alleen vastgelegd in de HTML-modus en dient een contextgevoelig verzoek in (we hadden het al over contextgevoelige en contextloze verzoeken).
Zie voorbeeld hieronder
3) web_submit_data (): Deze functie verzendt een ‘contextloos’ formulier. Deze functie wordt alleen opgenomen in de URL-gebaseerde opnamemodus of in de HTML-gebaseerde opnamemodus met de optie ‘Een script met alleen expliciete URL's’ aangevinkt.
Zie het onderstaande voorbeeld:
4) web_custom_request (): Deze functie wordt gebruikt om een aangepast HTTP-verzoek te maken met elke methode of hoofdtekst.
5) web_concurrent_start () en web_concurrent_end (): Deze functies worden gebruikt om het begin en het einde (respectievelijk) van een gelijktijdige groep te markeren. Alle functies binnen een groep (ingesloten tussen deze functies) worden gelijktijdig uitgevoerd.
6) web_reg_save_param (): Zoals reeds gezien, is dit een op grenzen gebaseerde correlatiefunctie.
7) web_reg_save_param_ex (): Dit is ook een op grenzen gebaseerde correlatiefunctie die een verbeterde versie is van de web_reg_save_param-functie.
8) web_reg_find (): Zoals reeds gezien, wordt deze functie gebruikt voor tekstcontrole.
9) web_image_check (): Zoals reeds gezien, wordt deze functie gebruikt voor beeldcontrole.
10) web_convert_param (): Deze functie wordt gebruikt om HTML-tekst naar platte tekst of URL, of platte tekst naar URL te converteren. In het onderstaande voorbeeld converteren deze functies de inhoud van parameter ‘ParamName’ van het HTML-formaat naar het URL-formaat.
Voorbeeld:
web_convert_param ('ParamName', 'SourceEncoding = HTML', 'TargetEncoding = URL', LAATSTE);
elf) web_get_int_property (): Deze functie retourneert specifieke informatie (zoals de statuscode, downloadgrootte enz.) Over het vorige HTTP-verzoek. In het onderstaande voorbeeld wordt deze functie gebruikt om HTTP-statuscode en downloadgrootte te retourneren.
Voorbeeld:
Actie.c (17): web_get_int_property gestart (MsgId: MMSG-26355)
Actie.c (17): web_get_int_property is gelukt (MsgId: MMSG-26392)
Actie.c (18): De HTTP-statuscode is 200
Actie.c (20): web_get_int_property gestart (MsgId: MMSG-26355)
Actie.c (20): web_get_int_property is gelukt (MsgId: MMSG-26392)
Actie.c (21): De downloadgrootte is 12891 bytes
12) web_set_max_html_param_len (): Deze functie wordt gebruikt om de maximale lengte in te stellen van elke HTML-string die kan worden opgehaald en opgeslagen in een parameter. De standaardwaarde voor de maximale lengte van een parameter die tijdens correlatie kan worden vastgelegd, is 256 tekens. Deze functie wordt gebruikt om een string op te halen die langer is dan 256 karakters.
13) web_cache_cleanup (): Deze functie wordt gebruikt om de cache te wissen. Als in het tabblad Runtime-instellingen-Browseremulatie ‘Elke iteratie een nieuwe gebruiker simuleren’ is ingeschakeld, wordt deze functie automatisch aangeroepen aan het begin van elke iteratie.
14) web_cleanup_cookies (): Deze functie wist alle cookies die momenteel door de Vuser worden opgeslagen.
vijftien) web_add_cookie (): Deze functie voegt een nieuwe cookie toe.
16) web_add_header (): Deze functie voegt een door de gebruiker gedefinieerde header toe aan het volgende HTTP-verzoek.
17) web_save_timestamp_param (): Deze functie slaat de huidige lokale tijdstempel op van de computer waarop het script wordt uitgevoerd. Dit is een 13-cijferig getal en de waarde is het aantal milliseconden sinds middernacht op 1 januari 1970.
Voorbeeld:
Actie.c (5): Tijdstempel: 1529249235582
18) web_set_user (): Deze functie specificeert een login-waarde en wachtwoord voor een webserver of een proxyserver. Wanneer we inloggen op een server die gebruikersnaam en wachtwoord vereist, wordt deze functie gegenereerd.
19) web_set_proxy (): Deze functie wordt gebruikt om Vuser te instrueren om alle HTTP-verzoeken naar het gespecificeerde Proxy server
twintig) web_set_certificate (): Deze functie wordt gebruikt om Vuser te instrueren om een specifiek certificaat uit het internet explorer-register te gebruiken (telkens wanneer een beveiligde webserver vereist dat de client een certificaat presenteert).
Bijvoorbeeld, de volgende functie instrueert de Vuser om het tweede certificaat uit het register van Internet Explorer te gebruiken.
eenentwintig) web_set_sockets_option (): Deze functie wordt gebruikt om verschillende opties voor sockets op de clientcomputer te configureren.
SSL_VERSION - SSL-versie: ‘2’, ‘3’, ‘2 & 3’, ‘TLS’, ‘TLS1.1’ of ‘TLS1.2’.
MAX_CONNECTIONS_PER_HOST - Het maximale aantal gelijktijdige verbindingen per host.
CLOSE_KEEPALIVE_CONNECTIONS - Sluit alle open verbindingen.
C Taalfuncties
Dit zijn de ‘C’ -functies die worden gebruikt om de VuGen-scripts voor specifieke scenario's te verbeteren.
1) strcpy (): Deze functie kopieert de ene string naar de andere.
Voorbeeld
Actie.c (8): De inhoud van String is: Dit is een string
2) strcmp (): Deze functie vergelijkt twee strings en retourneert een waarde die de lexicografische relatie daartussen aangeeft (‘= 0’ als strings hetzelfde zijn, ‘0’ als de eerste string groter is dan een tweede string).
hoe u een .jar-bestand uitvoert op Windows 10
Voorbeeld
Actie.c (14): Snaren zijn niet hetzelfde.
3) strlen (): Deze functie retourneert de lengte van een tekenreeks in bytes.
4) strcat (): Deze functie voegt twee strings samen.
Voorbeeld
Actie.c (10): De laatste reeks is StarWars.
5) strtok (): Zoals we al hebben gezien, retourneert deze functie een token uit een tekenreeks die wordt gescheiden door opgegeven tekens.
6) atoi (): Zoals we al hebben gezien, converteert deze functie een C-string naar een C-geheel getal.
7) atof (): Deze functie zet een C-string om in een C-float.
8) itoa (): Deze functie converteert een C-geheel getal naar een C-string.
Voorbeeld:
Actie.c (8): De string is: 1
9) fopen (): Deze functie wordt gebruikt om een bestandspointer te openen.
10) fclose (): Deze functie wordt gebruikt om een bestandspointer te sluiten.
elf) bang (): Deze functie leest niet-geformatteerde gegevens van een stream naar een buffer.
12) fwrite (): Deze functie schrijft niet-geformatteerde gegevens uit een buffer naar een stream.
13) fprintf (): Zoals reeds gezien, schrijft deze functie geformatteerde uitvoer naar een bestand.
14) sprint(): Deze functie schrijft geformatteerde uitvoer naar een string.
Voorbeeld
Actie.c (7): De nieuwe bestandsnaam is log_84.txt
Gevolgtrekking
In deze tutorial hebben we meer geleerd over de belangrijke vooraf gedefinieerde LoadRunner-functies.
Deze functies zorgen voor bijna alle belangrijke scenario's die we doorgaans tegenkomen in real-time applicaties. Het wordt aangeraden om ‘Functiereferentie’ in de VuGen-help te raadplegen voor meer details over deze functies.
In onze aanstaande tutorial leer je meer over Web Services Scripting met LoadRunner.
Bezoek hier voor een complete serie LoadRunner-zelfstudies
PREV-zelfstudie VOLGENDE zelfstudie
Aanbevolen literatuur
- Prestatietests van webservices met behulp van LoadRunner VuGen-scripts
- Datum- en tijdfuncties in C ++ met voorbeelden
- Python DateTime-zelfstudie met voorbeelden
- Functies in C ++ met typen en voorbeelden
- Laadtests met HP LoadRunner-zelfstudies
- Python-functies
- Python String-functies
- VUGen opname-opties in LoadRunner