Hvad er SoapUI?
⚡ Smart opsummering
SoapUI er det førende open source, cross-platform API-testværktøj, der hjælper QA-teams med at validere SOAP- og REST-webtjenester gennem funktionel, regressions-, sikkerheds- og belastningstest på tværs af moderne virksomhedsmiljøer og kontinuerlige integrationspipelines.
Hvad er SoapUI?
SoapUI er det førende open source, cross-platform API-testværktøj, der giver testere mulighed for at udføre automatiserede funktionelle, regressions-, compliance- og load-tests på forskellige web-API'er. Bygget specifikt til serviceorienterede arkitekturer og REST-webtjenester. SoapUI giver både tekniske og ikke-tekniske brugere en simpel brugerflade til design, kørsel og rapportering af API-tests.
- SoapUI er det førende open source API-testværktøj til tværplatforme.
- SoapUI giver testere mulighed for at udføre automatiserede funktionelle, regressions-, compliance- og belastningstests på forskellige web-API'er.
- SoapUI understøtter alle standardprotokoller og -teknologier til at teste alle slags API'er.
- SoapUI Brugerfladen er enkel og gør det muligt for både tekniske og ikke-tekniske brugere at bruge den problemfrit.
- Moderne udgivelser som f.eks. SoapUI 5.x og reklamen ReadyAPI Suiten udvider testningen til cloud-, container- og CI/CD-miljøer.
Hvorfor bruge SoapUI?
SoapUI er ikke blot et funktionelt API-testværktøj, men giver også testere mulighed for at udføre ikke-funktionel testning, såsom performance- og sikkerhedstests. Platformen dækker SOAP-, REST- og WSDL-tjenester gennem ét arbejdsområde, hvilket er grunden til, at mange virksomheds QA-teams bruger det som deres standard API-testløsning. Nedenfor er fem vigtige funktioner i SoapUI der forklarer, hvorfor holdene vælger det.
Topfunktioner ved SoapUI
SoapUI samler adskillige testfunktioner i én brugerflade, så et enkelt projekt kan dække funktionstjek, sikkerhedsscanninger og indlæsningskørsler. Følgende funktioner fremhæver, hvad der gør SoapUI et stærkt match til moderne API-testprogrammer.
1) Funktionstest
- Et kraftfuldt værktøj, der giver testere mulighed for at skrive funktionelle API-tests i SoapUI.
- Understøtter træk-og-slip, hvilket accelererer scriptudvikling.
- Understøtter fejlfinding af tests og giver testere mulighed for at udvikle datadrevne tests.
- Understøtter flere miljøer, hvilket gør det nemt at skifte mellem QA, Dev og Prod.
- Tillader avanceret scripting, så testere kan udvikle brugerdefinerede Groovy kode til ethvert scenarie.
2) Sikkerhedstest
- Har evnen til at udføre et komplet sæt af sårbarhedsscanninger.
- forhindrer SQL Injektion til sikre databaser.
- Scanner for stakoverløb, der er forårsaget af dokumenter, der er enorme i størrelse.
- Scanner for cross-site scripting, hvilket normalt opstår, når tjenesteparametre vises i meddelelser.
- Udfører Fuzzing-scanning og Boundary-scanning for at undgå uregelmæssig opførsel af tjenesterne.
3) Belastningstest
- Fordel belastningstestene på tværs af et hvilket som helst antal LoadUI-agenter.
- Simuler nemt belastningstest i store mængder og i den virkelige verden.
- Tillader avanceret brugerdefineret rapportering til at registrere præstationsparametre.
- Tillader overvågning af systemydelse fra start til slut.
4) Understøttede protokoller og teknologier
SoapUI har den mest omfattende protokolunderstøttelse blandt open source API-testværktøjer, der dækker REST, SOAP, WSDL, JMS, AMF, JDBC og HTTP.
5) Integration med andre automatiseringsværktøjer
SoapUI integreres rigtig godt med populære bygge- og CI værktøjer, hvilket er essentielt for at integrere API-tests i moderne leveringspipelines.
Maven
Apache Maven er et softwareværktøj til projektstyring, der kan administrere et projekts opbygning, rapportering og dokumentation fra et centralt arkiv. Maven kan også udføre SoapUI tests i et Maven-build ved hjælp af simple kommandoer.
Jenkins (Hudson)
Jenkins, oprindeligt forgrenet fra Hudson, er en Java-baseret værktøj til kontinuerlig integration, der integrerer med CVS, Subversion, Git, Perforce, ClearCase og RTC. SoapUI integreres også med Jenkins, hvilket hjælper teams med hurtigt at finde fejl for hver commit fra udviklerne.
JUnit
JUnit er en enhedstest rammer indbygget Java, som kan styre testflowet fra SoapUI også.
Apache Ant
Apache Myren er en Java bibliotek og kommandolinjeværktøj, der hjælper med at bygge software. Brug af SoapUI's kommandolinje kan teams udføre tests i et automatiseret Ant-build.
SoapUI vs Selenium
Det er nyttigt at sammenligne SoapUI med Selenium så teams forstår, hvilket værktøj der passer til hvilket omfang. SoapUI fokuserer på API- og protokollaget, mens Selenium fokuserer på brugergrænsefladen i en browser.
| SoapUI | Selenium |
|---|---|
| SoapUI bruges IKKE til test af brugergrænseflade. Det bruges kun til test af web-API'er eller webtjenester. | Selenium bruges til test af brugergrænsefladen. |
| Kan teste data sendt og modtaget mellem webbrowseren og en webserver. Kan teste protokoller og teknologier som REST og SOAP. | Selenium kan ikke teste protokoller, men den kan teste brugergrænsefladen. |
| I stand til at udføre funktionelle, belastnings- og sikkerhedstest af de ovennævnte teknologier. | Selenium kun kan udføre funktionstest. Ydelsestest kan gøres til en vis grad, fordi udførelsestiden kan være tracked, men flerbruger- og flerlejeforhold kan ikke testes. Selenium bestemt ikke kan bruges til sikkerhedstest. |
| Det er PROTOKOL-afhængigt og IKKE browser-afhængigt. | Selenium afhænger af browserens muligheder. |
SoapUI vs SoapUI Pro (ReadyAPI)
Der er to smagsvarianter af SoapUI: open source SoapUI og den kommercielle udgave, der oprindeligt var mærket SoapUI Pro og nu pakket som ReadyAPINedenfor er en sammenligning af funktioner, der forklarer, hvornår du skal vælge hver mulighed.
| Funktionalitet | SoapUI (Open source-version) | SoapUI fordele / ReadyAPI |
| Understøttede teknologier | ||
| SÆBE/WSDL | ||
| REST | ||
| etc | ||
| AMF | ||
| JDBC | ||
| HTTP | ||
| Automation | ||
| Funktionelle test | ||
| Belastningstest | ||
| Spottjenester | ||
| Code Generation | ||
| Kommandolinje | ||
| Maven | ||
| CI og Build Integration | ||
| Generelle funktioner | ||
| Standalone applikation | ||
| Groovy Code Skabeloner | ||
| Multimiljøstøtte | ||
| Flydende licenser | ||
| Funktionelle testfunktioner | ||
| WSDL-dækning | ||
| Anmodnings-/svardækning | ||
| Besked påstand | ||
| Test Refactoring | ||
| Udførelse af flere tests | ||
| Datakildedrevne tests | ||
| Scripting biblioteker | ||
| Enhedsrapportering | ||
| Manuel testtrin | ||
| Sikkerhedstestfunktioner | ||
| Grænsescanning | ||
| Ugyldig type | ||
| SQL Injection | ||
| XPath-injektion | ||
| XML-bombe | ||
| Fuzzing Scan | ||
| Crossing-scripting | ||
| Konfigurerbare scanninger | ||
| Rapportering | ||
| Indlæsningstestfunktioner | ||
| Hurtig belastningstest fra funktionstest | ||
| Konfigurerbare belastningsstrategier | ||
| Indlæs testpåstande | ||
| Realtidsstatistik | ||
| Ydelsesovervågning | ||
| Eksport af statistik | ||
| Opsætning/TearDown vha Groovy Scripting | ||
| LoadUI-integration | ||
| Rapportering | ||
| Rapporter | ||
| JUnit Rapporter | ||
| Rapport dataeksport | ||
| WSDL HTML-rapport | ||
| WSDL-dækning | ||
| TestSuite-dækning | ||
| TestCase-dækning | ||
| Påstandsdækning | ||
| Beskedoptagelsesdækning | ||
Hvornår skal du bruge det? SoapUI fordele / ReadyAPI Version?
Pro-udgaven (nu ReadyAPI) er det rigtige valg, når teams har brug for avanceret rapportering, administration af flere miljøer og virksomhedssupport. Punkterne nedenfor beskriver de vigtigste scenarier, hvor Pro-versionen leverer ekstra værdi i forhold til open source-versionen. SoapUI 5.x udgivelse.
- Datadrevet: Pro-versionen hjælper testere med at arbejde med eksterne datakilder såsom tekstfiler, XML, Groovy, Excel og databaser. Dette gør det muligt at skalere tests på tværs af en bred vifte af input, der drives via disse kilder.
- Testdækning: Pro-versionen giver testere mulighed for at få en statistisk rapport, der viser de funktioner, der er veltestede, samt de områder, der ikke er grundigt testet. Drill-down-rapporterne viser endda præcist, hvad der ikke er blevet testet, og hvad der ikke er blevet bekræftet.
- Test debugging: Testere kan køre testen til et breakpoint og se den aktuelle værdi af SoapUI egenskaber. Testdebugging-grænsefladen forenkler inspektionen af testflow, variabler, egenskaber, anmodninger og kontekst, hvilket gør testoprettelse og -forbedring mere strømlinet.
- Multi-Environment Support: Det kan være en skræmmende opgave at arbejde med flere miljøer som DEV, QA og Pre-PROD med open source-versionen, fordi testere er nødt til at ændre endpoints for at kunne køre i forskellige miljøer. Pro-versionen hjælper teams med at skifte problemfrit mellem miljøer.
- Rapportering: Pro-versionen er fyldt med mange muligheder for at tilpasse rapporter, der genererer detaljeret output på projekt-, TestSuite-, TestCase- eller LoadTest-niveau. Den producerer også rapporter i forskellige formater såsom PDF, HTML, Word eller Excel.
- Sikkerhedstest: Både SoapUI versioner har muligheder for at teste for sikkerhedssårbarheder såsom XML-bomber, SQL-injektion, fuzzing og cross-site scripting. Dog kun SoapUI Pro kan udføre sårbarhedsscanninger ved hjælp af sikkerhedstesten Generator med et museklik.
- SQL Builder: For ikke-tekniske testere kan det være besværligt at skrive komplekse SQL-forespørgsler. SoapUI Pro SQL Builder hjælper dem med at oprette SQL-forespørgsler ved hjælp af en grafisk brugerflade. Denne funktion fremskynder implementeringen af datadrevet testning.
- Støtte: Som en del af licensaftalen, SoapUI Pro har eksklusiv support udover online forumsupport.
Open Source-versionen af SoapUI vil blive brugt til træningsformål i denne vejledning.
SoapUI Værktøj – Versionstidslinjer
SoapUI har udgivet større udgivelser siden 2005, hvor hver udgivelse har tilføjet ny protokolunderstøttelse, sikkerhedsfunktioner eller rapporteringsmuligheder. Modern SoapUI 5.x-udgivelser fokuserer på plugin-stabilitet og REST-dækning, mens den kommercielle produktlinje er blevet omdøbt til ReadyAPI.
| Major version | Udgivelsesnoter | Udgivelses dato |
|---|---|---|
| V1.0 | Første udgivelse | 16-10-2005 |
| v1.5 | Load Test Release | 06-04-2006 |
| v1.6 | Udgivelse af værktøjer | 12-11-2006 |
| V1.7 | Pro-udgivelsen | 10-04-2007 |
| v2.0 | Dækningsfrigivelse | 12-12-2007 |
| v2.5 | REST frigivelse | 18-11-2008 |
| v3.0 | Udgivelse af rapportering | 09-07-2009 |
| v3.5 | Protokolfrigivelse | 01-03-2010 |
| v3.6 | LoadUI-udgivelse | 14-09-2010 |
| v4.0 | Sikkerhedsfrigivelse | 14-06-2011 |
| v4.5 | Big Ears Release | 28-03-2012 |
| v5.1 | Den tilsluttede udgivelse | 05-09-2014 |
| v5.2 | Udgivelse af store nye funktioner | 02-07-2015 |
| v5.3 | Udgivelse af medfølgende plugin | 05-12-2016 |







