how use properties soapui groovy script soapui tutorial 7
Eigenschaften sind das zentrale Repository, um unsere Informationen vorübergehend zu speichern. Diese können Anmeldeinformationen wie Benutzername und Kennwort, Sitzungsdaten wie Sitzungs-ID, Seitenkontext, Header-Informationen usw. enthalten.
Dies ist das 7. Tutorial in unserem SoapUI kostenlose Online-Trainingsreihe .
Lassen Sie uns sehen, wie Sie einen Eigenschaftstestschritt hinzufügen. Anschließend werden wir das Zuweisen von Werten zur Eigenschaft erläutern und diese im Protokoll anzeigen.
So fügen Sie Eigenschaften in SoapUI hinzu:
Hier sind die Schritte.
- Klicken Sie mit der rechten Maustaste auf den Knoten Testschritte
- Klicken Schritt hinzufügen und Eigenschaften Option aus dem Kontextmenü
- Geben Sie den gewünschten Eigenschaftsnamen ein und klicken Sie auf OK
- Klicken Sie im Eigenschaftenbildschirm auf
Symbol zum Hinzufügen einer Eigenschaft
- Geben Sie Ihren gewünschten Eigenschaftsnamen ein und klicken Sie auf OK. Lassen Sie mich zum Beispiel eintreten Pro_Response
- Geben Sie einen beliebigen Standardwert für die Eigenschaft ein, wenn Sie dies wünschen. Zum Beispiel gebe ich 'Nichts' ein
- Fügen Sie dann a hinzu Groovy Script Testschritt neben dem Eigenschaftsschritt. Siehe unten Screenshot.
Wir können die Eigenschaftsdaten während der Testausführung über die Testschritte übertragen. Dafür, SEIFE Pro bietet einen Testschritt für die Eigentumsübertragung. Schauen Sie sich den folgenden Screenshot an.
Fügen Sie im groovigen Skript das folgende Skript hinzu. Dieses Skript weist der Eigenschaft einen Zeichenfolgentext zu und wird nach Ausführung des Testfalls im Protokoll angezeigt.
String testString = 'TestString' testRunner.testCase.setPropertyValue( 'Pro_Response', testString ) def getLocalPropValue = testRunner.testCase.getPropertyValue('Pro_Response') log.info(getLocalPropValue)
- Nachdem Sie das obige Skript im Editor geschrieben haben, doppelklicken Sie auf den Schritt des Testfallnamens.
- Führen Sie den Testfall aus, indem Sie auf das Symbol klicken
und sehen Sie die Ergebnisse auf der Registerkarte Skriptprotokoll.
Zugriff auf Eigentum:
Es gibt verschiedene Möglichkeiten, auf Testfall-, Testsuite- und Projekteigenschaften zuzugreifen, um ihre Daten über das Skript festzulegen und abzurufen. Hier sind die Beispiele zum Abrufen der Eigenschaftsdaten.
def getTestCasePropertyValue = testRunner.testCase.getPropertyValue( 'LocalPropertyName' ) def getTestSuitePropertyValue = testRunner.testCase.testSuite.getPropertyValue ( ' LocalPropertyName ' ) def getProjectPropertyValue = testRunner.testCase.testSuite.project.getPropertyValue ( ' LocalPropertyName ' )
Um auf eine globale Eigenschaft zuzugreifen, ist dies das Skript:
def getGlobalPropertyValue = com.eviware.soapui.SoapUI.globalProperties.getPropertyValue ( 'GlobalPropertyName' )
Diese Skriptzeilen werden verwendet, um den Wert auf die lokale und globale Eigenschaft festzulegen.
testRunner.testCase.setPropertyValue( ' LocalPropertyName ', someValue ) testRunner.testCase.testSuite.setPropertyValue( ' LocalPropertyName ', someValue ) testRunner.testCase.testSuite.project.setPropertyValue( ' LocalPropertyName ', someValue ) com.eviware.soapui.SoapUI.globalProperties.setPropertyValue ( ' GlobalPropertyName ', someValue )
Hier in diesen Skripten, testRunner ist das häufigste Objekt, das Testsuiten, Testfälle oder Projekte sein kann. setPropertyValue und getPropertyValue sind die Methoden oder Funktionen.
Wie bereits erwähnt, können wir den Eigenschaften Daten zuweisen.
testRunner.testCase.testSteps ('Eigenschaften'). setPropertyValue ('Pro_Response', testString)
Nach dem Ausführen des obigen Skripts wird die Eigenschaft im Eigenschaftstestschritt aktualisiert. Siehe folgenden Screenshot.
Empfangen von Antwortdaten:
Lassen Sie uns nun diskutieren, wie die Antwortdaten über das Skript abgerufen werden. Um dies zu tun,
- Führen Sie die Serviceanforderung einmal aus und überprüfen Sie das Ergebnis
- Gehen Sie zum Groovy-Skripteditor und klicken Sie mit der rechten Maustaste auf den Editor, wie im folgenden Screenshot gezeigt
Jetzt generiert SoapUI Pro das Skript wie folgt, nachdem der Eigenschaftsname angegeben wurde.
def response = context.expand ('$ {ServiceRequest # Response}')
Wie wir wissen, ' def ”Ist ein grooviges Skript-Schlüsselwort, das das Definieren von Eigenschaften / Objekten darstellt. Standardmäßig hat SoapUI Pro den Eigenschaftsnamen „ Antwort ' in dem Eigentum erhalten auftauchen. Wenn wir wollen, können wir diesen Namen ändern. Verbleibende Teile des Skripts werden automatisch generiert.
Lassen Sie uns das obige Skript in unserem zuvor diskutierten Skript zusammenführen. Folgendes würden Sie sehen:
def response = context.expand( '${ServiceRequest#Response}' ) testRunner.testCase.setPropertyValue( 'Pro_Response', response ) def getLocalPropValue = testRunner.testCase.getPropertyValue('Pro_Response') log.info(getLocalPropValue)
Wenn wir das obige Skript separat ausführen, werden die gesamten Antwortdaten im Protokoll protokolliert Log Sektion. Selbst wenn dies zusammen mit dem Testfall ausgeführt wird, wird die gleiche Ausgabe in der angezeigt Skriptprotokoll .
Erstellen von Eigenschaften im Navigatorbereich:
bestes kostenloses Windows 10-Bereinigungsprogramm
Es gibt eine andere Möglichkeit, Eigenschaften lokal über das Eigenschaftenfenster zu erstellen, das angezeigt wird, wenn wir auf die Knoten unter der Projektstruktur klicken. Mal sehen, wie:
- Fügen Sie unter der Testsuite ConversionTestSuite eine Währungsumrechnungsdienstanforderung und einen umfangreichen Skripttestschritt hinzu.
- Klicke auf das TestSuite Name unter dem Projekt (d.h. ConversionTestSuite )
- Am unteren Rand des Navigationsfensters sehen wir ein Eigenschaftenfenster. Es enthält TestSuite Eigenschaften und Benutzerdefinierte Eigenschaften Registerkarten.
- Gehe zu Benutzerdefinierte Eigenschaften Klicken Sie darauf
- Klicken Sie dann auf das Pluszeichen (+), um die Eigenschaft wie unten gezeigt hinzuzufügen:
- Geben Sie den Eigenschaftsnamen ein und geben Sie den Standardeingabewert ein, wie im obigen Screenshot gezeigt.
- Führen Sie nun die Währungsumrechnungsdienstanforderung einmal aus. Nur dann können wir die Eigenschaftsinformationen erhalten, wenn wir mit der rechten Maustaste auf den Editor klicken.
- Geben Sie das folgende Skript in den Editor ein
def getPropValue = context.testCase.NetSuite.getPropertyValue('FromCurrencyValue')
- Klicke auf das Lauf Symbol
Dieses Skript ruft den Eigenschaftswert ab und weist der Variablen 'getProValue' zu. Um den Wert der Eigenschaft zu drucken, können wir das folgende Skript schreiben:
Log.info (getPropValue);
Globale Eigenschaften:
Lassen Sie uns nun globale Eigenschaften diskutieren. Diese Eigenschaften werden an einer Stelle definiert und wir können über die Projektkomponenten wie Testsuite, Testfall, Testschritte usw. auf sie zugreifen.
Hier sind die Skripte zum Schreiben von Daten in die globalen Eigenschaften.
com.eviware.soapui.SoapUI.globalProperties.setPropertyValue ( 'prjFromCurrency', 'USD' ) com.eviware.soapui.SoapUI.globalProperties.setPropertyValue ( 'prjToCurrency', 'INR' )
Sobald wir das obige Testschritt-Skript ausführen, werden die genannten Eigenschaften erstellt und die entsprechenden Werte diesen Eigenschaften zugewiesen. Lassen Sie uns sehen, wie wir es überprüfen können.
- Klicke auf das Datei Speisekarte
- Dann wähle Einstellungen Möglichkeit
- Klicken Sie auf der linken Seite auf Globale Eigenschaften Tab.
- Überprüfen Sie die Eigenschaften im Eigenschaftenblatt auf der rechten Seite. Siehe den Screenshot unten:
Fazit:
Eigenschaften sind hilfreich für die Übertragung der Daten zwischen den Testschritten wie Testsuiten, Testschritten und Testfällen. Die Eigenschaft kann durch ein grooviges Skript definiert werden. Wir können auch Daten der Eigenschaften über das Skript zuweisen und abrufen. Und genau wie bei anderen Testschritten können wir den Eigenschaftstestschritt durch Klicken mit der rechten Maustaste umbenennen, löschen oder deaktivieren und dann die entsprechenden Optionen aus dem Kontextmenü auswählen.
In dem nächstes Tutorial Außerdem erfahren Sie mehr über Eigenschaften wie das Übergeben von Eigenschaften in der Eingabeanforderung und das Abrufen von globalen Eigenschaften, den Testschritt zum Übertragen von Eigenschaften usw.
Bitte bleiben Sie bei uns und teilen Sie uns bei Fragen oder Kommentaren mit.
Literatur-Empfehlungen
- Arbeiten mit SoapUI-Eigenschaften - SoapUI Tutorial # 8
- So schreiben Sie ein einfaches Groovy-Skript in SoapUI - SoapUi Tutorial # 6
- So behandeln Sie Ausnahmen in SoapUI Groovy-Skripten - SoapUI Tutorial # 11
- Lernen Sie erweiterte SoapUI Groovy Scripting-Konzepte kennen - SoapUI Tutorial # 9
- So führen Sie datengesteuerte Tests in SoapUI Pro durch - SoapUI Tutorial Nr. 14
- 15+ SoapUI-Tutorials: Das beste API-Testtool für Webdienste
- Ausführliche Eclipse-Tutorials für Anfänger
- 7 Wichtige Funktionen von SoapUI und SoapUI Pro - Tutorial 2