SoapUI

Was ist SoapUI?

Bei SoapUI handelt es sich um ein Testwerkzeug, mit dem automatisierte Schnittstellen-Integrationstests primär für SOAP (Simple Object Access Protocol) und REST (Representational state transfer) Schnittstellen erstellt werden können. Integrationstests werden verwendet, um zu prüfen, ob eine Anwendung über die definierte Schnittstelle wirklich so funktioniert, wie es von dieser erwartet wird.

SoapUI kann eine Vielzahl von Protokollen testen, dazu gehören: SOAP, REST, HTTP(S), JDBC, JMS und AMF. Aus diesem Grund bewirbt der Hersteller SmartBear Software das Tool auch das „Schweizer Taschenmesser unter den Testing-Tools“.

Geschichte von Soap UI

SoapUI wurde ursprünglich nicht von SmartBear, sondern von dem schwedischen Unternehmen Eviware Software entwickelt und im Jahr 2005 veröffentlicht. Das Unternehmen und die Software wurde im Jahr 2011 von SmartBear übernommen.

Die Open Source Version von Soap UI wird seit dem von SmartBear gepflegt und weiterentwickelt.

Die kostenpflichtige SoapUI Pro Variante wurde zu einem Bestandteil von dem neuen Produkt ReadyAPI und ist keine eigenständige Software mehr.

Genaue Zahlen sind schwer zu bekommen, aber alleine bei SourceForge hat Soap UI fast 10 Millionen Downloads bis zum Jahr 2015 verzeichnet. Das macht Soap UI zu einem der meistverwendeten Testwerkzeuge.

Verschiedene Lizenzmodelle von SoapUI

Die Basisversion von SoapUI ist Open Source und ist damit auch kostenlos nutzbar. Das Github Repository ist hier zu finden: https://github.com/SmartBear/soapui

Die in ReadyAPI eingebundene Version SoapUI Pro wird als Bezahlsoftware von SmartBear angeboten. Nach der kostenlosen 14 Tage Testversion, kann eines der drei Lizenzpakete (Stand Januar 2021) ausgewählt werden:

  • API Test Modul für 679 Euro / Jahr
  • API Performance Module für 5.726 Euro / Jahr
  • API Virtualization Module für 1.131 Euro/ Jahr

Funktionsweise: So laufen automatisierte Integrationstests ab

Functional Testing, Security Testing, Load Testing: SoapUI ist als Tool für alle drei Zwecke geeignet. Das Vorgehen ist dabei immer mehr oder weniger gleich: Für den Schnittstellentest werden Requests erstellt, deren Parameter festgelegt werden. Diese spezifizierten Requests werden automatisiert gegen eine Ziel-Schnittstelle (SOAP oder REST Service) gesendet und die von dem Service zurückgelieferte Antwort (Response) überprüft. Stimmt die Antwort des Services nicht mit den erwarteten Werten überein, wird der Testfall als fehlgeschlagen markiert und die Details im TestReport protokolliert.

Bei SoapUI besteht die Möglichkeit, die Tests in Test Suites zu Gruppen zusammenzufassen. SoapUI arbeitet mit APIs von Drittanbietern zusammen und kann auch ohne tiefere Programmierkenntnisse genutzt werden.

Vor- und Nachteile von SoapUI

Vorteile:

  • Spezifikation der Testfälle kann über dazugehörige grafische Oberfläche erfolgen.
  • Tests und Parameter können ohne Programmierkenntnisse angepasst werden.
  • Datenexport möglich.
  • Unterschiedliche Testarten verfügbar, beispielsweise Load Testing, Functional Testing, Security Testing.
  • Die Standardversion ist OpenSource und damit kostenlos nutzbar.
  • Drittanbieter API können integriert werden.
  • Code Templates sind vorhanden, sodass auch Makros eingefügt werden können.
  • SmartBear bietet einen Support an.

Nachteile:

  • Arbeitet manchmal etwas langsam.
  • Vergleiche der Testresultate zwischen der Open Source Version und SoapUI Pro sind nicht möglich.
  • Erstellung von automatisierte Testplänen in SoapUI Open Source erfordert Groovy Scripts Kenntnisse.
  • In der kostenlosen Version fehlen Script Libraries und Wizzards für Datenextraktion.
  • Einige Module (z.B. MockResponse) für Anfänger eher komplex.

 

Weiterführende Links

 

Verwandte Begriffe: