Wie man eine Testsuite und einen Testfall erstellt in SoapUI
โก Intelligente Zusammenfassung
Erstellen einer SoapUI Projekt, Testsuite und Testfall ermรถglichen strukturiertes Testen von SOAP-Webdiensten. Diese Anleitung erlรคutert die Grundlagen des SOAP-Protokolls, den WSDL-Import, die Ausfรผhrung von Anfragen, die Einrichtung von Assertions und die Analyse von Antwortprotokollen fรผr zuverlรคssige Funktions- und Regressionstests.
Das SOAP-Protokoll verstehen
Vor dem Erstellen einer SoapUI Anhand des Testfalls ist es hilfreich, die Grundlagen des SOAP-Protokolls aufzufrischen. Ein klares Verstรคndnis davon, wie SOAP-Anfragen und -Antworten zwischen Systemen ausgetauscht werden, erleichtert die Anwendung. SoapUI um sie effektiv testen zu kรถnnen.
SOAP steht fรผr Simple Object Access ProtocolNachfolgend sind die Kerneigenschaften des SOAP-Protokolls aufgefรผhrt:
- Es handelt sich um ein XML-basiertes Protokoll, das zur Kommunikation zwischen zwei verschiedenen Systemen verwendet wird.
- Es ist plattform- und sprachunabhรคngig. Ein System, das entwickelt wurde mit Java kann mit einem in .NET entwickelten System kommunizieren.
- SOAP-Anfragen und -Antworten werden รผber HTTP รผbertragen.
Lernen Sie das SOAP-Nachrichtenformat kennen
Eine SOAP-Nachricht ist ein gewรถhnliches XML-Dokument, das die folgenden Elemente enthรคlt. Eine Nachricht kann entweder eine Anfrage oder eine Antwort sein.

Nachdem die SOAP-Grundlagen geschaffen sind, besteht der nรคchste Schritt darin, die SoapUI Projektstruktur, Testsuiten und Testfรคlle, die zur Validierung eines bestimmten Webdienstes erforderlich sind. Die folgende Anleitung verwendet eine SoapUI Projektbeispiel zur Erstellung eines neuen SOAP-Projekts.
Erstellen eines SOAP-Projekts in SoapUI
Das SOAP-Projekt enthรคlt die importierte WSDL-Definition sowie alle generierten Beispielanfragen fรผr jede Operation.
Schritt 1: Je nach Projekttyp importieren Sie das SOAP- oder REST-Protokoll. In diesem Beispiel erstellen wir ein neues SOAP-Projekt.
Schritt 2: Verwenden Sie die folgende SOAP-Anfrage URL: http://www.dneonline.com/calculator.asmx?wsdl
- Geben Sie den Projektnamen ein.
- Geben Sie den Pfad der WSDL-Anfrage ein (in diesem Fall http://www.dneonline.com/calculator.asmx?wsdl).
- Klicken Sie auf OK.
Hinweis:
- Erstellen Sie eine Beispielanfrage fรผr alle Operationen: Erzeugt eine Beispielanfrage fรผr jede Operation in der WSDL. Standardmรครig aktiviert, wenn die WSDL-Adresse eingegeben wird; kann deaktiviert werden, falls nicht erforderlich.
- Erstellen Sie eine Testsuite fรผr die importierte WSDL-Datei: Fรผgt ein SoapUI Testsuite innerhalb des Projekts fรผr die importierte WSDL.
- Relative Pfade: Speichert alle Dateien relativ zur Projektdatei, um eine einfache Portabilitรคt zu gewรคhrleisten.
Schritt 3: Nach der Erstellung des SOAP-Projekts mit der oben genannten WSDL werden zwei Operationen in das Projekt importiert.
Schritt 4: Erweitern Sie die erste Anfrage, klicken Sie mit der rechten Maustaste. Speichern, dann klick Neue Anfrage.
Dann klick OKDie SOAP-Anfrage wird im XML-Format angezeigt.
- Geben Sie Werte fรผr ein intA und intB.
- Klicken Sie auf die Absenden .
- Die Antwort-XML wird im rechten Bereich angezeigt.
Warum Testfรคlle erstellen anstatt direkte Anfragen?
Es ist zwar mรถglich, eine Anfrage fรผr eine einzelne Operation direkt zu senden, doch stรถรt dieser Ansatz schnell an seine Grenzen, wenn mehrere Eingabekombinationen getestet werden mรผssen. Beispielsweise erfordert der Wechsel von 5+5 zu 4+4 jedes Mal eine Anpassung der Anfrage. Eine Testsuite mit Testfรคllen ermรถglicht es, jedes Szenario wiederverwendbar zu halten, ohne die ursprรผngliche Operation zu verรคndern.
Wie man eine Testsuite erstellt SoapUI
Eine Testsuite ist ein Container, der zusammengehรถrige Testfรคlle gruppiert. Fรผhren Sie die folgenden Schritte aus, um eine zu erstellen.
Schritt 1) โโKlicken Sie mit der rechten Maustaste auf das Stammverzeichnis des Projekts.
Innerhalb des Projekts kรถnnen Sie eine Testsuite erstellen, indem Sie mit der rechten Maustaste auf das Projektverzeichnis klicken.
Schritt 2) Geben Sie die Details der Testsuite ein.
Geben Sie den Namen der Testsuite ein und klicken Sie auf OK.
Schritt 3) รberprรผfen Sie die erstellte Testsuite.
Die neue Testsuite wird wie unten dargestellt im Navigationsbereich angezeigt.
Schritt 4) รffnen Sie die Testsuite.
Das Fenster โTestsuiteโ รถffnet sich im rechten Bereich. Da noch keine Testfรคlle vorhanden sind, bleiben alle Aktionsoptionen deaktiviert.
Wie man einen Testfall erstellt SoapUI
Testfรคlle sind in einer Testsuite integriert und gruppieren die einzelnen Testschritte, die einen Webdienst ausfรผhren.
Schritt 1: Innerhalb einer Testsuite kรถnnen Sie mehrere Tests erstellen, indem Sie mit der rechten Maustaste auf die Testsuite klicken und die entsprechende Option auswรคhlen. Neuer Testfall.
Schritt 2: Geben Sie den Namen des Testfall und klicken auf OK.
Schritt 3: Der erstellte Testfall hat anfรคnglich null Schritte, wie unten dargestellt.
Hinweis: Der Testfall wird fรผr jeden Testtyp mit null Testschritten hinzugefรผgt. Sobald Schritte hinzugefรผgt werden, aktualisieren sich die Zahlen in den Klammern automatisch.
Funktionstestschritte gehรถren dazu Testschritte, Leistungsschritte gehen ein Lade Testund Sicherheitsรผberprรผfungen finden unter Sicherheitstests.
Schritt 4: Durch Rechtsklicken kรถnnen Sie verschiedene Testschritttypen einfรผgen. Testschritte und die entsprechende Option auswรคhlen. Wรคhlen Sie fรผr einen REST-Webdienst die REST-Testanfrage anstelle einer SOAP-Anfrage.
Hinzufรผgen eines Testschritts in SoapUI
Fรผgen Sie innerhalb des Testfalls einen Testschritt hinzu, um die importierte SOAP-Anfrage zu validieren.
Schritt 1: Fรผgen Sie einen neuen Schritt vom Typ hinzu SOAP-Anforderung wie unten gezeigt.
Schritt 2: Geben Sie den Schrittnamen ein und klicken Sie auf OK.
Schritt 3: Es erscheint ein Dialogfeld zur Auswahl der auszufรผhrenden Operation. Alle verfรผgbaren Operationen werden zur Auswahl aufgelistet.
- Hier werden zahlreiche Operationen aufgefรผhrt. Die Operationen sind bis auf die SOAP-Version identisch: CalculatorSoap verwendet SOAP Version 1.1, wรคhrend CalculatorSoap12 SOAP Version 1.2 verwendet.
- Die Version spielt in diesem Szenario keine Rolle, daher kann jede beliebige ausgewรคhlt werden.
- Nach Auswahl des Vorgangs klicken Sie auf OK.
Schritt 4: Beim Hinzufรผgen eines Testfalls kรถnnen Standard-Assertions angewendet werden. Assertions, auch Prรผfpunkte oder Validierungspunkte genannt, werden im nรคchsten Tutorial behandelt.
Die folgenden Prรผfpunkte kรถnnen beim Erstellen eines Testfalls hinzugefรผgt werden. Das unten stehende Beispiel erstellt einen Testfall ohne aktivierte Validierungspunkte.
- รberprรผft, ob die Antwortnachricht nach dem Testlauf vom Typ SOAP ist.
- Prรผft, ob das Antwortschema gรผltig ist.
- Prรผft, ob die SOAP-Antwort ein FAULT-Element enthรคlt.
Schritt 5: Beim Erstellen des Testfalls wird das Anforderungs-XML wie unten dargestellt angezeigt. Die Struktur des XML wird im Screenshot erlรคutert.
Schritt 6: Die Anzahl der Testschritte wurde auf eins erhรถht, da ein Schritt hinzugefรผgt wurde. Das Hinzufรผgen von Last- und Sicherheitstestschritten erhรถht deren jeweilige Zรคhler automatisch.
Manuelles Senden einer Anfrage und Lesen der Antwort in SoapUI
Schritt 1: Im folgenden Beispiel werden zwei ganze Zahlen addiert.
- intA โ 5
- intB โ 5
Nรคchster:
- Ersetzen Sie die Fragezeichen in der Anfrage-XML durch diese Eingaben.
- Nach der Aktualisierung der entsprechenden XML-Tags klicken Sie auf Anfrage abschicken um die Antwort zu รผberprรผfen.
Schritt 2: Nach dem Absenden der Anfrage wird der Webdienst vom Webserver verarbeitet und die Antwort wird zurรผckgegeben, wie unten dargestellt.
Die Antwort bestรคtigt: 5 plus 5 gleich 10.
Die SOAP-Antwort- und Protokollfelder verstehen
Wie bereits erwรคhnt, werden SOAP-Nachrichten รผber HTTP รผbertragen. Die Untersuchung der Rohdaten (RAW) hilft zu verstehen, wie die SOAP-Anfrage und -Antwort รผber HTTP รผbertragen werden.
Schritt 1: Klicken Sie auf die RAW Registerkarte in der SoapUI Anfragefenster.
- Die Anfrage wird an den Webserver gesendet, daher wird die HTTP-POST-Methode verwendet.
- Die SOAP-Anfrage wird im Nachrichtentext der HTTP-Nachricht รผbermittelt.
Schritt 2: Klicken Sie nun auf RAW Registerkarte in der SoapUI Antwortfenster, um zu verstehen, wie die Antwort รผber HTTP รผbermittelt wird.
- Nach der Bearbeitung der Anfrage wird der HTTP-Antwortcode (200) angezeigt, der den Erfolg signalisiert.
- Die SOAP-Antwort wird im Body der HTTP-Nachricht an den Client zurรผckgesendet.
Die folgende Tabelle fasst gรคngige HTTP-Antwortcodes zur schnellen Fehlersuche zusammen.
| HTTP Code | Beschreibung |
|---|---|
| 1xx | Information: Anfrage eingegangen, Bearbeitung lรคuft. |
| 2xx | Erfolg: Die Aktion wurde erfolgreich empfangen, verstanden und akzeptiert. |
| 3xx | Weiterleitung: Zur Bearbeitung des Antrags sind weitere Schritte erforderlich. |
| 4xx | Clientfehler: Die Anfrage enthรคlt einen Syntaxfehler oder kann nicht ausgefรผhrt werden. |
| 5xx | Serverfehler: Der Server konnte eine scheinbar gรผltige Anfrage nicht bearbeiten. |
Schritt 3: Im Fenster โTestfallโ werden auรerdem zusรคtzliche Metadaten fรผr die Anfrage und die Antwort angezeigt.
- Zeigt an, dass in der gesendeten Anfrage kein Header enthalten ist.
- Zeigt an, dass der an den Webserver gesendeten Anfrage keine Anhรคnge beigefรผgt sind.
- Zeigt 10 Header-Elemente in der Antwort an, die durch Anklicken angezeigt werden kรถnnen.
- Zeigt an, dass der Antwortnachricht keine Anhรคnge beigefรผgt sind.
Protokollbereich
Der Protokollbereich zeigt alle zwischen Client und Server ausgetauschten Informationen an. Die am hรคufigsten verwendeten Protokollregisterkarten werden im Folgenden beschrieben.
SoapUI Melden Sie sich: Zeigt die Antwortinformationen des Webservers an. Dieselben Daten werden in der Datei soapui.log im Verzeichnis gespeichert. SoapUI bin-Verzeichnis.
HTTP-Protokoll: Zeigt alle HTTP-Paketรผbertragungen an. Alle in der Rohdatenansicht sichtbaren Informationen werden auch im HTTP-Protokoll erfasst.
Fehlerprotokoll: Zeigt alle wรคhrend der gesamten Projektsitzung aufgetretenen Fehler an. Dieselben Informationen werden in der Datei soapui-errors.log im Verzeichnis gespeichert. SoapUI bin-Verzeichnis.
Speicherprotokoll: รberwacht die Speichernutzung und stellt sie grafisch dar. Dies ist hilfreich bei speicherintensiven Operationen.
Nachdem eine Testsuite, ein Testfall und ein Testschritt eingerichtet und eine erfolgreiche Antwort empfangen wurde, besteht der nรคchste Schritt in der Validierung der Antwort. Assertionstypen werden im nรคchsten Tutorial behandelt.






























