Parametrisierung, Funktionen, Transaktionen in LoadRunner

โšก Intelligente Zusammenfassung

Parametrisierung, Transaktionen und Laufzeiteinstellungen sind die drei Erweiterungen, die eine einfache VuGen-Aufzeichnung in ein Skript verwandeln, das sich wie ein echter Benutzer verhรคlt und Zeitangaben liefert, denen Sie tatsรคchlich vertrauen kรถnnen.

  • ๐Ÿ”˜ Transaktionen: Um eine Anfrage zeitlich zu timen, kapseln Sie lr_start_transaction und lr_end_transaction ein.
  • โ˜‘๏ธ Statuscodes: Eine Transaktion mit LR_AUTO, LR_PASS oder LR_FAIL abschlieรŸen.
  • โœ… Rendezvous: Halten Sie die virtuellen Benutzer an einem Treffpunkt, damit sie gleichzeitig auf den Server zugreifen.
  • ๐Ÿงช Parametrierung: Ersetzen Sie fest codierte Datumsangaben, IDs und Logins durch Werte pro Iteration.
  • ๏ธ Laufzeiteinstellungen: Ablauflogik, Taktung, Protokollierung, Denkzeit, Bandbreite, Browser, Proxy.
  • ๐Ÿ“Š Wiederholbarkeit: Inkonsistente Einstellungen sind die รผbliche Ursache fรผr nicht reproduzierbare Ergebnisse.

Parametrisierung, Transaktionen und Funktionen in LoadRunner VuGen

Ein aufgezeichnetes Skript kann einen virtuellen Benutzer simulieren; allerdings reicht eine bloรŸe Aufzeichnung mรถglicherweise nicht aus, um das Verhalten eines realen Benutzers nachzubilden.

Wenn ein Skript aufgezeichnet wird, beschreibt es einen einzelnen, geradlinigen Ablauf innerhalb der Anwendung. Ein echter Benutzer kann einen Prozess jedoch mehrmals durchlaufen, bevor er sich abmeldet. Die Verzรถgerung zwischen den Klicks (die sogenannte Denkzeit) variiert von Person zu Person, und manche Benutzer greifen รผber eine schnelle Internetverbindung auf Ihre Anwendung zu, andere nicht. Um also ein realistisches Benutzererlebnis zu erzielen, mรผssen wir unsere Skripte so optimieren, dass sie sich mรถglichst nah an das Verhalten echter Benutzer anpassen.

Das ist der wichtigste Aspekt bei der Durchfรผhrung von โ€žPerformance Testingโ€žโ€ฆโ€œ, aber ein VUser-Skript umfasst mehr. Wie messen Sie die Zeit, die ein VUser wรคhrend des Lasttests (SUL) benรถtigt? Wie erkennen Sie, ob der VUser den Test erfolgreich abgeschlossen hat oder nicht, und wie erkennen Sie, ob ein Backend-Prozess ausgefallen ist oder die Serverressourcen nicht ausreichten?

Wir mรผssen unser Skript verbessern, um alle oben genannten Fragen beantworten zu kรถnnen.

Markenhinweis: VuGen wurde ursprรผnglich als HP, dann als Micro Focus vertrieben und ist jetzt Teil von OpenText Professionelles Performance EngineeringDie folgenden Funktionen und Einstellungen bleiben unverรคndert.

Verwenden von Transaktionen

Transaktionen messen die Serverantwortzeit fรผr beliebige Operationen. Vereinfacht gesagt, misst eine โ€žTransaktionโ€œ die Zeit, die das System fรผr eine bestimmte Anfrage benรถtigt. Das kann so einfach sein wie ein Klick auf eine Schaltflรคche oder ein AJAX-Aufruf, der ausgelรถst wird, wenn ein Textfeld den Fokus verliert.

Transaktionen anzuwenden ist unkompliziert. Schreiben Sie eine Codezeile vor der Anfrage und schlieรŸen Sie die Transaktion nach deren Abschluss. LoadRunner benรถtigt lediglich einen String als Transaktionsnamen.

Um eine Transaktion zu erรถffnen, verwenden Sie diese Codezeile:

lr_start_transaction(โ€œTransaction Nameโ€);

Um die Transaktion abzuschlieรŸen, verwenden Sie diese Codezeile:

lr_end_transaction(โ€œTransaction Nameโ€, <status>);

Der teilt LoadRunner mit, ob diese bestimmte Transaktion erfolgreich oder nicht erfolgreich war. Die mรถglichen Parameter kรถnnten sein:

  • LR_AUTO
  • LR_PASS
  • LR_FAIL

Ejemplo:

lr_end_transaction(โ€œMy_Loginโ€, LR_AUTO);
lr_end_transaction(โ€œ001_Opening_Dashboard Nameโ€, LR_PASS);
lr_end_transaction(โ€œBusiness_Workflow_Transaction Nameโ€, LR_FAIL);

Code Hinweise: Die Codeausschnitte werden exakt wie verรถffentlicht wiedergegeben, inklusive typografischer Anfรผhrungszeichen. Ein echtes VuGen-Skript benรถtigt jedoch doppelte ASCII-Anfรผhrungszeichen. Geben Sie diese daher neu ein, wenn Sie diesen Code kopieren.

Punkte zu beachten:

  • Vergessen Sie nicht, dass Sie mit โ€žCโ€œ arbeiten und dass es sich dabei um eine Sprache handelt, bei der die GroรŸ-/Kleinschreibung beachtet wird.
  • Der Punkt (.) ist im Transaktionsnamen nicht zulรคssig, Leerzeichen und Unterstriche hingegen schon.
  • Wenn Ihr Code gut strukturiert ist und Prรผfpunkte zur รœberprรผfung der Serverantwort hinzugefรผgt wurden, kรถnnen Sie eine benutzerdefinierte Fehlerbehandlung wie LR_PASS oder LR_FAIL verwenden. Andernfalls kรถnnen Sie LR_AUTO verwenden; LoadRunner behandelt dann Serverfehler (HTTP 500, 400 usw.) automatisch.
  • Achten Sie bei der Anwendung von Transaktionen darauf, dass keine Wartezeitanweisung zwischen den Transaktionen enthalten ist, da Ihre Transaktion sonst immer diesen Zeitraum einschlieรŸt.
  • Da LoadRunner einen konstanten String als Transaktionsnamen benรถtigt, ist ein hรคufiges Problem beim Anwenden von Transaktionen die Diskrepanz der Strings. Wenn Sie beim ร–ffnen und SchlieรŸen einer Transaktion unterschiedliche Namen verwenden, erhalten Sie mindestens zwei Fehler. Die geรถffnete Transaktion wurde nie geschlossen, daher gibt LoadRunner einen Fehler aus; und die zu schlieรŸende Transaktion wurde nie geรถffnet, was einen zweiten Fehler verursacht.
  • Beide Fehler erscheinen im Wiedergabeprotokoll. รœberprรผfen Sie daher immer zuerst den Transaktionsnamen in den Erรถffnungs- und Abschlussbelegen, wenn einer der beiden Fehler gemeldet wird.
  • Da LoadRunner die Synchronisierung von Anfragen und Antworten automatisch รผbernimmt, mรผssen Sie sich beim Anwenden von Transaktionen keine Gedanken รผber die Antwort machen.

Treffpunkte, Kommentare und Skriptfunktionen

Drei kleinere Verbesserungen sorgen dafรผr, dass sich ein Skript wie Produktionscode verhรคlt und liest: Rendezvous-Punkte, Kommentare und der in VuGen integrierte Funktionsbrowser.

Treffpunkte

Ein Rendezvous-Punkt ist ein โ€žTreffpunktโ€œ. Es handelt sich um eine einzelne Anweisung, die LoadRunner anweist, Parallelverarbeitung einzufรผhren. Sie fรผgen Rendezvous-Punkte in VUser-Skripte ein, um eine hohe Benutzerlast auf dem Server zu simulieren.

Rendezvous-Punkte weisen einen virtuellen Benutzer (VUser) an, wรคhrend der Ausfรผhrung zu warten, bis mehrere VUser an einem bestimmten Punkt eintreffen, um eine Aufgabe gleichzeitig auszufรผhren. Um beispielsweise eine Spitzenlast auf einem Bankserver zu simulieren, kann ein Rendezvous-Punkt eingefรผgt werden, der 100 VUser anweist, gleichzeitig Bargeld einzuzahlen.

Sind die Rendezvous-Punkte nicht korrekt platziert, greifen die virtuellen Benutzer selbst bei demselben Skript auf unterschiedliche Teile der Anwendung zu. Dies liegt daran, dass jeder virtuelle Benutzer eine unterschiedliche Antwortzeit erhรคlt und es daher bei einigen Benutzern zu Verzรถgerungen kommt.

Syntax:

lr_rendezvous(โ€œLogical Nameโ€);

Korrekturhinweis: Die verรถffentlichte Seite buchstabiert dies lr_rendesvousDer korrekte Funktionsname lautet: lr_rendezvousDie fehlerhafte Form lรคsst sich nicht kompilieren.

Best Practices:

  • Stellen Sie einem Rendezvous-Punkt โ€žrdv_โ€œ voran, um die Lesbarkeit des Codes zu verbessern. zB โ€žrdv_Loginโ€œ
  • Entfernen Sie alle unmittelbar angrenzenden Denkzeitaussagen.
  • Nach der Aufzeichnung Rendezvouspunkte in der Skriptansicht anwenden.

Die untenstehende Skriptansicht zeigt eine in eine aufgezeichnete Aktion eingefรผgte Rendezvous-Anweisung:

Rendezvous-Anweisung in eine aufgezeichnete VuGen-Aktion in der Skriptansicht eingefรผgt

Kommentare

Fรผgen Sie Kommentare hinzu, um eine Aktivitรคt, einen Codeabschnitt oder eine Codezeile zu beschreiben. Kommentare tragen dazu bei, dass der Code fรผr alle, die ihn spรคter verwenden, verstรคndlicher wird. Sie liefern Informationen zu einer bestimmten Operation und trennen zwei Abschnitte zur besseren Unterscheidung.

Sie kรถnnen Kommentare hinzufรผgen

  • Wรคhrend der Aufnahme (mit dem Tool)
  • Nach der Aufnahme (direktes Schreiben im Code)

Best Practice: Markieren Sie alle Kommentare am Anfang jeder Skriptdatei.

Funktionen รผber das Menรผ einfรผgen

Sie kรถnnen zwar direkt einfache Codezeilen schreiben, benรถtigen aber mรถglicherweise einen Hinweis, um sich an eine Funktion zu erinnern. Alternativ kรถnnen Sie die Schritte-Toolbox (vor Version 12 als โ€žFunktion einfรผgenโ€œ bekannt) verwenden, um beliebige Funktionen zu finden und direkt in Ihr Skript einzufรผgen.

Die Schritte-Toolbox finden Sie unter Ansicht โ†’ Schritte-Toolbox, wie unten dargestellt.

VuGen-Ansichtsmenรผ mit hervorgehobenem Befehl โ€žSchritte-Toolboxโ€œ.

Dadurch รถffnet sich ein Seitenfenster. Schauen Sie sich den Screenshot an:

Seitenleiste der Steps Toolbox mit Auflistung der verfรผgbaren VuGen-Funktionen zum Einfรผgen

Was ist Parametrisierung?

Ein Parameter in VuGen ist ein Container, der einen gespeicherten Wert enthรคlt, der fรผr verschiedene Benutzer ersetzt wird.

Wรคhrend der Ausfรผhrung des Skripts (in VuGen oder dem Controller), wird der vorherige Wert des Parameters durch einen Wert aus einer externen Quelle (z. B. einer .txt-Datei, XML oder einer Datenbank) ersetzt.

Parametrisierung ist nรผtzlich, um dynamische (oder eindeutige) Werte an den Server zu senden. Beispielsweise kann es erforderlich sein, dass ein Geschรคftsprozess 10 Iterationen durchlรคuft und dabei jedes Mal einen eindeutigen Benutzernamen auswรคhlt.

Es hilft auch dabei, das Verhalten des betreffenden Systems im realen Leben zu simulieren. Sehen Sie sich die folgenden Beispiele an.

Problembeispiele:

  • Ein Geschรคftsprozess funktioniert nur fรผr das aktuelle Datum, das vom Server stammt, daher kann es nicht als fest codierte Anfrage รผbergeben werden.
  • Manchmal รผbergibt die Clientanwendung dem Server eine eindeutige ID (z. B. session_id), damit der Prozess fortgesetzt werden kann, selbst fรผr nur einen Benutzer. In einem solchen Fall ist die Parametrisierung hilfreich.
  • Die Clientanwendung speichert hรคufig einen Cache der Daten, die an den Server gesendet und von ihm empfangen werden. Dadurch erhรคlt der Server kein tatsรคchliches Nutzerverhalten (bei dem der Server je nach Suchkriterien einen anderen Algorithmus ausfรผhrt). Das VUser-Skript wird zwar erfolgreich ausgefรผhrt, die erfassten Leistungsstatistiken sind jedoch nicht aussagekrรคftig. Die Verwendung unterschiedlicher Daten durch Parametrisierung hilft, serverseitige Aktivitรคten wie gespeicherte Prozeduren zu simulieren und das System zu testen.
  • Ein wรคhrend der Aufzeichnung im virtuellen Benutzer (VUser) fest codiertes Datum ist mรถglicherweise nach Ablauf dieses Datums nicht mehr gรผltig. Durch Parametrisierung des Datums kann die Ausfรผhrung des VUsers erfolgreich fortgesetzt werden, indem das fest codierte Datum ersetzt wird. Solche Felder oder Anfragen eignen sich fรผr die Parametrisierung.

Sie erstellen einen solchen Wert, indem Sie in der Skriptansicht mit der rechten Maustaste auf den aufgezeichneten Wert klicken und โ€žDurch einen Parameter ersetzenโ€œ auswรคhlen. VuGen fragt dann, welcher Datentyp den Wert liefert:

Parametertyp Wert liefert es
Reichen Sie das Werte, die aus einer Spalte einer .dat-Datei gelesen werden.
Tisch Ein Block aus Zeilen und Spalten gleichzeitig.
Datum / Zeit Aktuelles Datum und Uhrzeit im gewรคhlten Format.
Zufallszahl Eine Zahl aus einem von Ihnen festgelegten Bereich.
Einzelne Nummer Eine eindeutige Nummer pro VUser, basierend auf einem Startwert und einer BlockgrรถรŸe.
Iterationsnummer Die aktuelle Iterationsanzahl.
Vuser ID Die bei der Wiedergabe zugewiesene Kennung.
Gruppieren / Laden Generator Name Die VUser-Gruppe oder der Generatorrechner.
XML Ein Ausschnitt aus einem XML-Datensatz.
Benutzerdefinierte Funktion Ein Wert, der von Ihrer eigenen Bibliotheksfunktion zurรผckgegeben wird.

Zwei weitere Optionen legen fest, wie Daten รผber Iterationen hinweg genutzt werden:

Option Auswahlmรถglichkeiten Was es steuert
Wรคhlen Sie die nรคchste Zeile aus. Sequenziell, Zufรคllig, Eindeutig Welche Zeile ein VUser als Nรคchstes liest.
Wert aktualisieren bei Jede Iteration, jedes Vorkommen, einmal Wenn der Wert aktualisiert wird.

Die folgende Schritt-fรผr-Schritt-Anleitung zeigt die Parametrisierung eines aufgezeichneten Skripts:

Klicken Sie auf werden auf dieser Seite erlรคutert wenn das Video nicht zugรคnglich ist.

Laufzeiteinstellungen und deren Auswirkungen auf die VUser-Simulation

Die Laufzeiteinstellungen sind genauso wichtig wie Ihr VuGen-Skript. Unterschiedliche Konfigurationen kรถnnen zu vรถllig verschiedenen Testdesigns fรผhren. Daher sind inkonsistente Laufzeiteinstellungen die hรคufigste Ursache fรผr nicht reproduzierbare Ergebnisse. Betrachten wir nun jedes Attribut einzeln.

Fรผhren Sie Logic aus

Run Logic definiert die Hรคufigkeit, mit der alle Aktionen auรŸer vuser_init und vuser_end ausgefรผhrt werden.

Dies macht vermutlich deutlicher, warum LoadRunner empfiehlt, kee zu verwenden.ping Der gesamte Login-Code befindet sich in vuser_init und der Logout-Teil in vuser_end, jeweils separat.

Wenn Sie mehrere Aktionen erstellt haben โ€“ beispielsweise Anmelden, Bildschirm รถffnen, Miete berechnen, Geld senden, Kontostand prรผfen und Abmelden โ€“ dann lรคuft fรผr jeden virtuellen Benutzer das folgende Szenario ab:

Alle virtuellen Benutzer melden sich an, fรผhren die Schritte โ€žBildschirm รถffnenโ€œ, โ€žMiete berechnenโ€œ, โ€žGeld einzahlenโ€œ und โ€žKontostand prรผfenโ€œ aus, dann erneut โ€žBildschirm รถffnenโ€œ, โ€žMiete berechnenโ€œ usw., und wiederholen diesen Vorgang 10 Mal, bevor sie sich einmal abmelden.

Bereich โ€žLaufzeitlogikโ€œ der VuGen-Laufzeiteinstellungen mit Anzeige der Iterationsanzahl

Dies ist eine leistungsstarke Einstellung, die es dem Skript ermรถglicht, sich wie ein echter Benutzer zu verhalten. Denken Sie daran: Ein echter Benutzer meldet sich nicht jedes Mal an und ab; er wiederholt in der Regel dieselben Schritte.

Wie oft klicken Sie auf โ€žPosteingangโ€œ, bevor Sie Ihre E-Mails abrufen und sich abmelden?

Pacing

Das ist wichtig. Die meisten Menschen verstehen den Unterschied zwischen Arbeitstempo und Bedenkzeit nicht. Der einzige Unterschied besteht darin, dass sich das Arbeitstempo auf die Verzรถgerung zwischen den Iterationen bezieht, wรคhrend die Bedenkzeit die Verzรถgerung zwischen zwei beliebigen Schritten ist.

Die empfohlene Einstellung hรคngt vom Testdesign ab. Wenn Sie jedoch eine hohe Last anwenden mรถchten, sollten Sie die Option โ€žSobald die vorherige Iteration beendet istโ€œ wรคhlen, wie unten dargestellt.

Tempo-Bereich der Laufzeiteinstellungen mit den Optionen fรผr die Iterationsverzรถgerung

Log

Ein Log ist im Allgemeinen eine Aufzeichnung aller Ereignisse wรคhrend der Ausfรผhrung von LoadRunner. Sie kรถnnen das Log aktivieren, um die Vorgรคnge zwischen Ihrer Anwendung und Ihrem Server nachzuvollziehen.

LoadRunner bietet einen leistungsstarken, robusten und skalierbaren Protokollierungsmechanismus. Sie kรถnnen entweder nur ein โ€žStandardprotokollโ€œ oder ein detailliertes und konfigurierbares erweitertes Protokoll fรผhren oder die Protokollierung vollstรคndig deaktivieren.

Ein Standardprotokoll ist informativ und leicht verstรคndlich. Es enthรคlt genau die richtige Menge an Informationen, die Sie im Allgemeinen zur Fehlerbehebung Ihrer VUser-Skripte benรถtigen.

Im erweiterten Protokoll ist die Standardprotokollinformation nur eine Teilmenge. Zusรคtzlich kann die Parameterersetzung aktiviert werden. Dadurch wird die LoadRunner-Komponente angewiesen, vollstรคndige Informationen zu allen Parametern (aus der Parametrisierung) einzuschlieรŸen, einschlieรŸlich Anfrage- und Antwortdaten.

Wenn Sie โ€žVom Server zurรผckgegebene Datenโ€œ einbeziehen, wird Ihre Protokolldatei deutlich lรคnger. Sie enthรคlt dann sรคmtliche HTML-Codes, Tags, Ressourcen und sonstige Informationen direkt im Protokoll. Diese Option ist nur dann sinnvoll, wenn Sie eine umfassende Fehlerbehebung benรถtigen. In der Regel wird die Protokolldatei dadurch sehr groรŸ und unรผbersichtlich.

Wie Sie sich inzwischen sicher schon gedacht haben, wenn Sie sich fรผr โ€žErweitertโ€œ entscheiden TracIhre Protokolldatei wird riesig sein. Sie mรผssen es unbedingt ausprobieren. Sie werden feststellen, dass sich die von VuGen benรถtigte Zeit ebenfalls deutlich erhรถht, obwohl dies keinen Einfluss auf die von VuGen gemeldete Transaktionsantwortzeit hat. Dies sind sehr fortgeschrittene Informationen, die nur dann nรผtzlich sind, wenn Sie die betreffende Anwendung, die Client-Server-Kommunikation zwischen Ihrer Anwendung und der Hardware sowie Details auf Protokollebene verstehen. Normalerweise erfordert das Lesen und die Fehlersuche dieser Informationen einen erheblichen Aufwand.

Protokollbereich der Laufzeiteinstellungen mit Standard- und erweiterten Protokollierungsoptionen

Tipps:

  • Unabhรคngig davon, wie lange VuGen benรถtigt, wenn die Protokollierung aktiviert ist, hat dies keinen Einfluss auf die Transaktionsantwortzeit โ€“ der Protokollierungsaufwand wird nicht in die gemessene Zeit einbezogen.
  • Deaktivieren Sie das Protokoll, wenn es nicht benรถtigt wird.
  • Deaktivieren Sie die Protokollierung, sobald Sie Ihre Skripte abgeschlossen haben. Skripte mit aktivierter Protokollierung fรผhren dazu, dass der Controller langsamer lรคuft und unnรถtige Fehlermeldungen ausgibt.
  • Durch Deaktivieren der Protokollierung erhรถht sich die maximale Anzahl der Benutzer, die Sie mit LoadRunner simulieren kรถnnen.
  • Erwรคgen Sie die Verwendung der Option โ€žNachrichten nur bei Fehlern sendenโ€œ โ€“ dadurch werden unnรถtige Informationsmeldungen unterdrรผckt und nur fehlerbezogene Meldungen ausgegeben.

Denken Sie mal nach

Die Denkzeit ist einfach die Verzรถgerung zwischen zwei Schritten.

Die Denkzeit hilft, das Nutzerverhalten nachzubilden, da kein echter Nutzer eine Anwendung wie eine Maschine bedienen kann. VuGen generiert die Denkzeit automatisch. Sie haben weiterhin die volle Kontrolle darรผber, wie lange die Denkzeit ansteigt, ob sie entfernt, vervielfacht oder variiert wird.

Um es besser zu verstehen: Ein Benutzer รถffnet ein Fenster (eine Antwort, gefolgt von einer Anfrage) und gibt dann Benutzername und Passwort ein, bevor er die Eingabetaste drรผckt. Die nรคchste Interaktion zwischen Anwendung und Server erfolgt, wenn der Benutzer auf โ€žAnmeldenโ€œ klickt. Die Zeit, die der Benutzer fรผr die Eingabe von Benutzername und Passwort benรถtigt, wird in LoadRunner als Denkzeit bezeichnet.

Bereich โ€žDenkzeitโ€œ der Laufzeiteinstellungen mit den Wiedergabe-Denkzeitoptionen

Wenn Sie eine aggressive Belastung der Anwendung simulieren mรถchten, sollten Sie die Bedenkzeit vollstรคndig deaktivieren.

Um jedoch ein realistisches Verhalten zu simulieren, kรถnnen Sie โ€žZufรคllige Denkzeit verwendenโ€œ auswรคhlen und die Prozentsรคtze nach Wunsch festlegen.

Erwรคgen Sie, die Denkzeit mit โ€žLimit Think Timeโ€œ auf einen angemessenen Zeitraum zu begrenzen. Normalerweise sind 30 Sekunden ausreichend.

Geschwindigkeitssimulation

Die Geschwindigkeitssimulation bezieht sich einfach auf die Bandbreitenkapazitรคt jedes Client-Rechners.

Da wir Tausende von virtuellen Benutzern mit LoadRunner simulieren, ist es bemerkenswert, wie einfach LoadRunner die Simulation von Bandbreite und Netzwerkgeschwindigkeit gestaltet hat.

Wenn Ihre Kunden mit einer Bandbreite von รผber 128 kbit/s auf Ihre Anwendung zugreifen, kรถnnen Sie dies hier steuern. Sie kรถnnen realitรคtsnahe Zugriffsmuster simulieren, was Ihnen helfen sollte, die korrekten Leistungsstatistiken zu erhalten.

Geschwindigkeitssimulationsbereich mit maximaler Bandbreite oder fester Verbindungsgeschwindigkeit

Die beste Empfehlung ist, die maximale Bandbreite zu verwenden. Dadurch kรถnnen Sie netzwerkbedingte Leistungsengpรคsse ausblenden und sich zunรคchst auf potenzielle Probleme in der Anwendung konzentrieren. Sie kรถnnen den Test jederzeit mehrmals ausfรผhren, um das Verhalten unter verschiedenen Bedingungen zu beobachten.

Browser-Emulation

Die Benutzererfahrung hรคngt nicht vom verwendeten Browser ab und liegt daher weitgehend auรŸerhalb des Rahmens von Leistungsmessungen. Sie kรถnnen jedoch auswรคhlen, welchen Browser Sie emulieren mรถchten, wie im folgenden Bereich dargestellt.

Browseremulationsbereich mit Optionen fรผr Benutzeragent und Cache-Simulation

Wann genau spielt es in dieser Konfiguration eine Rolle, welchen Browser man auswรคhlt?

Sie verwenden diese Konfiguration, wenn es sich bei Ihrer Anwendung um eine Webanwendung handelt, die fรผr verschiedene Browser unterschiedliche Antworten liefert. Beispielsweise werden fรผr Internet Explorer und Windows Explorer mรถglicherweise unterschiedliche Bilder und Inhalte angezeigt. Firefox.

Eine weitere wichtige Einstellung ist die Browser-Cache-Simulation. Wenn Sie die Antwortzeit mit aktiviertem Cache messen mรถchten, aktivieren Sie dieses Kontrollkรคstchen. Wenn Sie den ungรผnstigsten Fall untersuchen mรถchten, ist dies natรผrlich irrelevant.

Die Option โ€žNicht-HTML-Ressourcen herunterladenโ€œ ermรถglicht LoadRunner das Herunterladen von CSS, JS und anderen Rich Media-Dateien. Diese Option sollte aktiviert bleiben. Wenn Sie sie jedoch aus Ihrem Performance-Testdesign ausschlieรŸen mรถchten, kรถnnen Sie sie deaktivieren.

Proxy

Am besten ist es, den Proxy vollstรคndig von Ihrem System zu entfernen. Test Umgebung Ein Proxy im Testpfad macht die Testergebnisse unzuverlรคssig. Es kann jedoch Situationen geben, in denen dies unvermeidbar ist. In solchen Fรคllen bietet LoadRunner Proxy-Einstellungen.

Sie arbeiten (oder sollten arbeiten) mit der Einstellung โ€žKein Proxyโ€œ. Diese Einstellung finden Sie in Ihrem Standardbrowser. Vergessen Sie jedoch nicht zu รผberprรผfen, welcher Browser als Standard festgelegt ist und welche Proxy-Konfiguration dieser Browser verwendet.

Proxy-Bereich der Laufzeiteinstellungen mit den Optionen โ€žKein Proxyโ€œ und โ€žManueller Proxyโ€œ.

Wenn Sie einen Proxy verwenden, der eine Authentifizierung (oder ein Skript) erfordert, kรถnnen Sie auf die Schaltflรคche โ€žAuthentifizierenโ€œ klicken. Dadurch รถffnet sich ein neues Fenster. Siehe Screenshot unten.

Proxy-Authentifizierungsfenster fordert Benutzername und Passwort an

Geben Sie auf diesem Bildschirm einen Benutzernamen und ein Passwort fรผr die Authentifizierung am Proxy-Server ein. Klicken Sie auf OK, um das Fenster zu schlieรŸen.

Herzlichen Glรผckwunsch! Die Konfiguration Ihres VuGen-Skripts ist abgeschlossen. Vergessen Sie nicht, es auch fรผr alle Ihre VUser-Skripte zu konfigurieren.

Als nรคchstes kommen Korrelation, das Szenario in der Controllerund Leseergebnisse LoadRunner-Analyse. Siehe LoadRunner-Architektur und Load Testing Fรผhrer.

Hรคufig gestellte Fragen

Markieren Sie den Wert in der Skriptansicht, klicken Sie mit der rechten Maustaste und wรคhlen Sie โ€žDurch Parameter ersetzenโ€œ. Geben Sie einen Namen ein, wรคhlen Sie einen Typ, und VuGen ersetzt alle รผbereinstimmenden Vorkommen, die Sie bestรคtigen.

Datum/Uhrzeit, Zufallszahl, eindeutige Nummer, Iterationsnummer, Vuser-ID, Gruppenname und Last Generator Die Namen werden bei der Wiedergabe generiert. Nur die Parameter Datei, Tabelle und XML benรถtigen eine von Ihnen bereitgestellte Datenquelle.

Maschinelles Lernen schlรคgt Korrelationskandidaten vor, kennzeichnet Skripte, die nach einer Anwendungsรคnderung nicht mehr funktionieren, und generiert realistische Testdaten. Neuere VuGen-Versionen bieten KI-gestรผtzte Skripterstellung, die generierten Anweisungen mรผssen jedoch noch รผberprรผft werden.

GitHub-Copilot Die C-Gerรผststruktur wird gut unterstรผtzt โ€“ Schleifen, Stringverarbeitung, Transaktions-Wrapper โ€“, da VuGen-Skripte in C geschrieben sind. Schwรคcher ist die Kompatibilitรคt mit protokollspezifischen Webfunktionen; daher sollte jeder generierte Aufruf anhand der Funktionsreferenz รผberprรผft werden.

Es weist einen virtuellen Benutzer an, nach einem Fehlschlag die verbleibenden Schritte weiter auszufรผhren, anstatt die Iteration zu beenden. Dies ist in einem frรผhen explorativen Durchlauf nรผtzlich, kann aber tatsรคchliche Fehler verschleiern, wenn die Option aktiviert bleibt.

Fรผgen Sie vor der Anfrage eine Inhaltsprรผfung ein, damit die Wiedergabe nach dem erwarteten Text in der Antwort sucht. Ein positiver HTTP-Statuscode allein beweist nichts, da auch eine Fehlerseite den Statuscode 200 zurรผckgeben kann.

Nein. Das Produkt wechselte von HP zu Micro Focus und heiรŸt jetzt โ€ฆ OpenText Professionelles Performance EngineeringVuGen behรคlt seinen Namen, seine Funktionsbibliothek und seine Laufzeit-Einstellungsbereiche.

Die lr_rendezvous-Anweisung markiert lediglich den Treffpunkt. Wie viele virtuelle Benutzer eintreffen mรผssen und wie lange der Lauf wartet, wird in den Rendezvous-Optionen des Controllers und nicht in VuGen festgelegt.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: