{"id":954,"date":"2024-01-19T10:00:00","date_gmt":"2024-01-19T09:00:00","guid":{"rendered":"https:\/\/ittester.sk\/automatisiertes-testen\/korrelation-in-jmeter\/"},"modified":"2024-06-06T12:43:23","modified_gmt":"2024-06-06T10:43:23","slug":"korrelationsmessgerat","status":"publish","type":"post","link":"https:\/\/ittester.sk\/de\/leistungstest\/jmeter-anleitung\/korrelationsmessgerat\/","title":{"rendered":"Korrelation in JMeter"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\"><strong>Inhalts\u00fcbersicht<\/strong><\/h2>\n<div class=\"wp-block-aioseo-table-of-contents\"><ul><li><a class=\"aioseo-toc-item\" href=\"#aioseo-co-je-korelacia-a-preco-je-potrebna\">\u010co je korel\u00e1cia a pre\u010do je potrebn\u00e1?<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-strucny-nahlad-do-regularnych-vyrazov\">Stru\u010dn\u00fd n\u00e1h\u013ead do regul\u00e1rnych v\u00fdrazov<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-extraktor-regularnych-vyrazov\">Extraktor regul\u00e1rnych v\u00fdrazov<\/a><\/li><\/ul><\/div>\n<h2 class=\"wp-block-heading\" id=\"aioseo-co-je-korelacia-a-preco-je-potrebna\">Was ist Korrelation und warum ist sie notwendig?<\/h2>\n\n<p>Die Korrelation ist der wichtigste Aspekt der Skripterstellung. Dabei werden in der Regel dynamische Daten aus fr\u00fcheren Anfragen\/Aufrufen abgerufen und an nachfolgende Anfragen gesendet.<\/p>\n\n<p>Nehmen wir ein Beispiel, um genau zu sehen, warum wir eine Korrelation brauchen. Nehmen wir an, dass wir ein Szenario erlebt haben, in dem:<\/p>\n\n<ul class=\"wp-block-list\">\n<li>-&gt;Benutzer gibt Anmeldedaten ein und klickt auf OK<\/li>\n\n\n\n<li>-&gt;Startseite \u00f6ffnet sich und der Benutzer f\u00fchrt weitere Aktionen aus<\/li>\n<\/ul>\n\n<p>Wenn wir dieses Szenario nun einfach wiederholen, wird der Test sogar f\u00fcr einen einzelnen Benutzer fehlschlagen. Dies ist auf den verwendeten Authentifizierungsmechanismus zur\u00fcckzuf\u00fchren. Wenn wir uns bei einer Website anmelden, werden Sitzungsvariablen dynamisch erstellt. Diese Sitzungsvariablen werden an andere Anfragen weitergegeben und helfen bei der Verifizierung und Authentifizierung der durchgef\u00fchrten Aktionen. Es ist also nicht m\u00f6glich, die Anfragen, die diese Variablen enthalten, einfach aufzuzeichnen und wiederzugeben. In diesem Fall m\u00fcssen wir Webanfragen mit dynamischen Variablen verkn\u00fcpfen. Und f\u00fcr die Korrelation m\u00fcssen wir den &#8222;Regular Expression Extractor&#8220; verwenden, der regul\u00e4re Ausdr\u00fccke verwendet. Bevor wir uns also n\u00e4her mit der Korrelation befassen, sollten wir zun\u00e4chst die &#8222;regul\u00e4ren Ausdr\u00fccke&#8220; verstehen.<\/p>\n\n<h2 class=\"wp-block-heading\" id=\"aioseo-strucny-nahlad-do-regularnych-vyrazov\">Ein kurzer Einblick in regul\u00e4re Ausdr\u00fccke<\/h2>\n\n<p>Regul\u00e4re Ausdr\u00fccke werden verwendet, um auf der Grundlage eines Suchmusters Daten aus einer Zeichenkette abzurufen. Um einen beliebigen Wert (in der Regel einen dynamisch erstellten Wert) aus einer String-Antwort zu erhalten, definieren wir einen linken Begrenzungsrahmen f\u00fcr die Variable, dann einige Platzhalter und schlie\u00dflich einen rechten Begrenzungsrahmen:<\/p>\n\n<p>(Linksb\u00fcndig)(Platzhalterzeichen)(Rechtsb\u00fcndig)z.B. wenn wir eine Textantwort haben wie-&#8230;__EVENTVALIDATION &#8222;value=&#8220;weriudflsdfspdfusdjhsdihffgdfgpdfjsdjfpj&#8220; \/&gt;&#8230;<\/p><p>Und wir m\u00fcssen den Wert der Variablen Event Validation mit regul\u00e4ren Ausdr\u00fccken ermitteln; ein regul\u00e4rer Ausdruck daf\u00fcr w\u00e4re:<\/p>\n\n<pre class=\"wp-block-code\"><code><p><strong>__EVENTVALIDATION\" value=\"(.+?)\" \/&gt;&nbsp;where, Left Bound = __EVENTVALIDATION\" value=\"&nbsp;Wildcard characters = (.+?)&nbsp;Right Bound = \" \/&gt;<\/strong><\/p><\/code><\/pre>\n\n<p>Wenn Sie sich nicht weiter mit regul\u00e4ren Ausdr\u00fccken befassen wollen, reichen in den meisten F\u00e4llen Platzhalter (.+?) aus. Weitere Informationen \u00fcber regul\u00e4re Ausdr\u00fccke und die Bedeutung der einzelnen Platzhalterzeichen finden Sie auf der <a href=\"http:\/\/www.regular-expressions.info\/tutorialcnt.html\" target=\"_blank\" rel=\"noopener nofollow\" title=\"\">Info-Website zu regul\u00e4ren Ausdr\u00fccken<\/a>.<\/p>\n\n<h2 class=\"wp-block-heading\" id=\"aioseo-extraktor-regularnych-vyrazov\">Extraktor f\u00fcr regul\u00e4re Ausdr\u00fccke<\/h2>\n\n<p>Kehren wir zur JMeter-Anwendung zur\u00fcck und betrachten wir ein Beispiel, bei dem zwei Vorg\u00e4nge vorliegen:<\/p>\n\n<ol class=\"wp-block-list\">\n<li>Der Benutzer ruft eine Webseite auf<\/li>\n\n\n\n<li>Der Benutzer gibt die Details ein und klickt auf OK<\/li>\n<\/ol>\n\n<p>Ruft jetzt &#8222;User launch website&#8220; auf (Starten der Website des Benutzers) erstellt eine dynamische Variable &#8211; &#8222;eventVvalidation&#8220;. (Ereignis\u00fcberpr\u00fcfung), die wir auf der Registerkarte Antwortdaten \u00fcberpr\u00fcfen k\u00f6nnen (Antwortdetails) im H\u00f6rer (H\u00f6rer) &#8222;View Result Tree&#8220; f\u00fcr diesen Aufruf. Der Wert dieser Variablen wird dann an nachfolgende Aufrufe im Zusammenhang mit &#8222;User fill details and click on OK button&#8220; als Http-Post-Parameter \u00fcbergeben.<\/p>\n\n<p>Schritte zur Korrelation von Ereignispr\u00fcfwerten:<\/p>\n\n<ol class=\"wp-block-list\">\n<li>F\u00fchren Sie das Skript mit den beiden oben genannten Vorg\u00e4ngen aus.<\/li>\n\n\n\n<li>Gehen Sie auf die Registerkarte Antwort (Textmodus) im Listener &#8222;View Result Tree&#8220; der Operation &#8222;User launch website&#8220;. In der folgenden Abbildung sehen wir, dass der zweite Vorgang &#8222;Benutzer gibt die Daten ein und klickt auf OK&#8220; rot ist, weil er noch nicht korreliert ist.<\/li>\n<\/ol>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"516\" src=\"https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-1-1290-650-1024x516.webp\" alt=\"\" class=\"wp-image-786\" srcset=\"https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-1-1290-650-1024x516.webp 1024w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-1-1290-650-300x151.webp 300w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-1-1290-650-768x387.webp 768w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-1-1290-650.webp 1290w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n<ol class=\"wp-block-list\" start=\"3\">\n<li>Erstellen Sie einen regul\u00e4ren Ausdruck, um den Wert der Validierungsvariablen Ereignis zu extrahieren. Wie oben erw\u00e4hnt, wird die R.E. f\u00fcr diesen Zweck:<\/li>\n<\/ol>\n\n<p><strong>__EVENTVALIDATION&#8220; value=&#8220;(.+?)&#8220; \/&gt;<\/strong><\/p>\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>Navigieren Sie zu der http-Anfrage innerhalb des Transaktionscontrollers &#8222;User Launch Website&#8220; -&gt; Hinzuf\u00fcgen -&gt; Post Processor -&gt; Regular Expression Extractor.<\/li>\n<\/ol>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"521\" src=\"https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-2-1080-550-1024x521.webp\" alt=\"\" class=\"wp-image-788\" srcset=\"https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-2-1080-550-1024x521.webp 1024w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-2-1080-550-300x153.webp 300w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-2-1080-550-768x391.webp 768w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-2-1080-550.webp 1080w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n<p>Hinzuf\u00fcgen des Steuerelements &#8222;Extraktor f\u00fcr regul\u00e4re Ausdr\u00fccke&#8220;.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"456\" src=\"https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-3-1100-490-1024x456.webp\" alt=\"\" class=\"wp-image-790\" srcset=\"https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-3-1100-490-1024x456.webp 1024w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-3-1100-490-300x134.webp 300w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-3-1100-490-768x342.webp 768w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-3-1100-490.webp 1100w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n<p>R.E. Extraktor Parameter gef\u00fcllt<\/p>\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li>Der Name der verschachtelten Referenz ist der Name der erstellten Variablen, die den Wert der Ereignisvalidierung erfasst, der von der HTTP-Anfrage als Teil der Operation &#8222;User launch website&#8220; erzeugt wird.<\/li>\n\n\n\n<li>\u00dcbergeben Sie nun diese Variable an die nachfolgende http-Anfrage als Post-Anfrage in der Operation &#8222;User fill details and click on OK button&#8220; &#8211; \u00fcberschreibt den bereits vorhandenen, fest kodierten Wert der Event Validation-Variable.<\/li>\n<\/ol>\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"512\" src=\"https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-4-1160-580-1024x512.webp\" alt=\"\" class=\"wp-image-792\" srcset=\"https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-4-1160-580-1024x512.webp 1024w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-4-1160-580-300x150.webp 300w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-4-1160-580-768x384.webp 768w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-4-1160-580.webp 1160w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n<p>Anfrage ohne Korrelation (Hardcodierte Werte)<\/p>\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"593\" src=\"https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-5-1140-660-1024x593.webp\" alt=\"\" class=\"wp-image-794\" srcset=\"https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-5-1140-660-1024x593.webp 1024w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-5-1140-660-300x174.webp 300w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-5-1140-660-768x445.webp 768w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/01\/korelacia-screenshot-5-1140-660.webp 1140w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n<p>Anfrage(Antrag) mit Korrelation (dynamische Werte)<\/p>\n\n<ol class=\"wp-block-list\" start=\"7\">\n<li>F\u00fchren Sie den Testplan erneut aus. Alles gr\u00fcn! Das ist alles.<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>Die Korrelation ist der wichtigste Aspekt der Skripterstellung. Es geht darum, dynamische Daten abzurufen und sie an die folgenden Anfragen zu senden.<\/p>\n","protected":false},"author":8,"featured_media":1668,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[21],"tags":[],"class_list":["post-954","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-jmeter-anleitung"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/ittester.sk\/de\/wp-json\/wp\/v2\/posts\/954","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ittester.sk\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ittester.sk\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ittester.sk\/de\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/ittester.sk\/de\/wp-json\/wp\/v2\/comments?post=954"}],"version-history":[{"count":2,"href":"https:\/\/ittester.sk\/de\/wp-json\/wp\/v2\/posts\/954\/revisions"}],"predecessor-version":[{"id":1670,"href":"https:\/\/ittester.sk\/de\/wp-json\/wp\/v2\/posts\/954\/revisions\/1670"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ittester.sk\/de\/wp-json\/wp\/v2\/media\/1668"}],"wp:attachment":[{"href":"https:\/\/ittester.sk\/de\/wp-json\/wp\/v2\/media?parent=954"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ittester.sk\/de\/wp-json\/wp\/v2\/categories?post=954"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ittester.sk\/de\/wp-json\/wp\/v2\/tags?post=954"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}