Väitteet kohdassa SoapUISkriptit, XQuery, XPath-tyypit

⚡ Älykäs yhteenveto

Väitteet kohdassa SoapUI ovat tarkistuspisteitä, jotka päättävät, onko verkkopalvelun vastaus oikein, muuttaen pelkästään suoritettavan pyynnön testiksi, joka joko läpäisee tai epäonnistuu oikealla, todennettavissa olevalla sisällöllä.

  • 🔘 Luokat: Ominaisuuden sisältö, vaatimustenmukaisuus/tila/standardit, skripti, palvelutasosopimus, JMS ja tietoturva.
  • ☑️ Sisältää: Vahvistaa merkkijonon olemassaolon vastauksessa säännöllisten lausekkeiden tuella.
  • Ei sisällä: Vahvistaa merkkijonon puuttumisen, hyödyllinen virhetunnisteiden ja vuotaneiden kenttien yhteydessä.
  • 🧪 XPath-osuma: Määrittele ensin nimiavaruus, kohdista sitten yksi solmu ja vertaa sen arvoa.
  • 🛠️ XQuery-osuma: Vahvistaa toistuvat solmujoukot, jotka muuten vaatisivat satoja XPath-tarkistuksia.
  • 📊 käsikirjoitus: Groovy väitteet käsittelevät dynaamisia vastauksia sekä asennus- tai purkulogiikkaa.
  • 🔍 Vianmääritys: Väärä nimiavaruus ja kaksoispisteen sijaan piste -syntaksi aiheuttavat useimmat virheet.

Väitteet kohdassa SoapUI

Mikä on väite?

Väite tarkoittaa tekoa vahvistaa tai väittää jotain. Se voidaan myös tulkita tarkistuspisteeksi tai vahvistuspisteeksi.

Kun pyyntö lähetetään web-palvelimelle, se vastaanottaa vastauksen. Meidän on tarkistettava, sisältääkö vastaus odottamamme tiedot. Vastauksen validoimiseksi meidän on käytettävä väitteitä. Ilman väitteitä testivaihe todistaa vain, että palvelu vastasi, ei sitä, että se vastasi oikein, minkä vuoksi jokainen API-testi pitäisi kantaa mukana ainakin yhtä.

Väitteiden tyypit

Vastauksen esittämiseen on useita tapoja, mutta keskitymme tässä yleisesti käytettyihin. SoapUI väitetyyppejä vastauksen validoinnissa. Alla on lueteltu avoimen lähdekoodin versiossa käytettävissä olevat kategoriat SoapUI.

  1. Kiinteistön sisältö
  2. Compliance Status Standard
  3. Käsikirjoitus
  4. SLA
  5. JMS
  6. Turvallisuus

Valintaikkuna ryhmittelee kaikki väitteet näihin luokkiin, kuten alla oleva kuvakaappaus osoittaa.

Väitteiden kategoriat, jotka on lueteltu kohdassa SoapUI Lisää väite -valintaikkuna
Väitteiden tyypit SoapUI

Yllä lueteltujen lisäksi Pro-versiossa on sisäänrakennettu JDBC-assertio, jonka avulla voimme varmistaa, että verkkopalvelu on päivittänyt tietokannan oikein.

Versiohuomautus: nykyinen SoapUI dokumentaatiossa luetellaan myös JDBC luokka (JDBC-tila ja JDBC-aikakatkaisu) yllä olevien luokkien rinnalla ja Viestin sisältö ominaisuussisällön sisällä oleva väite rikkaampaa XML-vertailua varten. Kaupallinen versio, johon tässä viitataan nimellä "Pro", myydään nyt nimellä ReadyAPI SmartBearin toimesta, joten uudempien versioiden valikkotunnisteet saattavat lukea eri tavalla, kun taas väitteiden toiminta pysyy samana.

Sisältää väitteen

Etsii määritetyn merkkijonon olemassaoloa. Se tukee myös säännöllistä lauseketta.

Jatkamme samalla esimerkillä edellisestä opetusohjelmasta WSDL-pyynnöllä as http://www.dneonline.com/calculator.asmxJos et ole vielä rakentanut kyseistä projektia, työskentele sen läpi projektin, testipaketin ja testitapauksen luominen ensimmäinen.

Vaihe 1: Oletusarvoisesti väitteitä ei ole.

  1. Väitteiden määrä näkyy Väitteet-välilehdessä.
  2. Lisää uusi väite napsauttamalla Lisää uusi väite -painiketta.

SoapUI Väitteet-välilehti, jossa ei ole väitteitä ja jossa on Lisää uusi väite -painike

Vaihe 2: Nyt,

  1. Valitse väiteluokka.
  2. Valitse väitteen tyyppi.
  3. Napsauta "Lisää"

Lisää väite -valintaikkuna, jossa on valittuna väitteen kategoria ja tyyppi

Vaihe 3: Vahvistetaan, onko vastauksessa merkkijono '46'. Napsauta 'OK'.

Huomautus: Voimme myös jättää kirjainkoon huomioimatta ja lisätä säännöllisen lausekkeen.

Sisältää väitteen määritysikkunan, johon on syötetty arvo 46

Vaihe 4: Kun se on lisätty, väite suoritetaan välittömästi ja näyttää, onko se VALID vai INVALID.

Väitteet-välilehti raportoi Sisältää-väitteen olevan VOIMASSA

Vaihe 5: Oletetaan nyt, että muutamme 'Sisältää väitteen' -kohdan sisältöä SoapUI'47:ään' ja katso mitä tapahtuu.

Sisältää-väitteen sisällön muokkaaminen arvosta 46 arvoon 47

Vaihe 6: Väite suoritetaan ja tulos heitetään käyttäjälle. Koska vastauksessa ei ole merkkijonoa '47', väittely epäonnistui.

Väitteet-välilehti raportoi Sisältää-väitteen epäonnistuneeksi

Ei Sisältää väitteen

Sen vastine toimii toisinpäin. Etsii määritetyn merkkijonon olemattomuutta. Se tukee myös säännöllisiä lausekkeita.

Vaihe 1: Nyt kun olet napsauttanut 'Lisää uusia väitteitä' -painiketta,

  1. Valitse väiteluokka.
  2. Valitse väitteen tyyppi – tässä tapauksessa "EI sisällä"
  3. Napsauta "Lisää"

Lisää väite -valintaikkuna, jossa EI Sisältää valittuna

Vaihe 2: Vahvistetaan, onko vastauksessa merkkijono 'intA'. Syötä merkkijono 'FromCurrency' ja napsauta 'OK'.

Ei sisällä -väittämävalintaikkuna, johon on syötetty merkkijono Valuutta-arvosta

Vaihe 3: Heti kun väite on lisätty, se suoritetaan ja näyttää tuloksen. Tähän mennessä olemme lisänneet kaksi väitettä, joten molemmat väitteet suoritetaan ja näyttävät tuloksen.

Väitteet-välilehti, jossa luetellaan sekä Sisältää- että Ei sisällä -tulokset

Vaihe 4: Muutetaan nyt 'Not Contains Assertion' -lausekkeen sisältöä ja katsotaan, mitä tapahtuu. Tarkistamme merkkijonon 'AddResult' puuttumisen.

Ei sisällä väitettä -valintaikkuna tarkistaa AddResult-tunnusta

Vaihe 5: Merkkijono 'AddResult' on itse asiassa vastauksessa, joten 'NOT Contains' -väittämä epäonnistuu alla olevan mukaisesti.

Not Contains -väittämä epäonnistuu, koska AddResult on läsnä.

XPath Match Assertion

Merkkijonojen täsmäys on suoraviivaista, joten seuraava väittämä kohdistuu yhteen solmuun. Käyttää XPath-lauseketta kohdesolmun ja sen arvojen valitsemiseen. XPath, on XML-kyselykieli solmujen valitsemiseen XML-dokumentista.

Vaihe 1: Nyt kun olet napsauttanut 'Lisää uusia väitteitä' -painiketta,

  1. Valitse väiteluokka.
  2. Valitse väitteen tyyppi – tässä tapauksessa XPath Match
  3. Napsauta "Lisää"

Lisää väite -valintaikkuna, jossa on valittu XPath-osuma

Vaihe 2: Lisää XPath -ikkuna avautuu.

Ennen lisäämistä SoapUI XPath-lausekkeessa meidän on määriteltävä nimiavaruus. XML-nimiavaruus on kokoelma nimiä, jotka tunnistetaan Uniform Resource Identifier (URI) -viittauksella. Näitä nimiä käytetään XML-dokumenteissa elementtien ja attribuuttien niminä. Samaa käytetään myös SoapUI XPath-väite.

XML-nimiavaruuden määrittämiseksi meidän tarvitsee vain napsauttaa 'Ilmoita'-painiketta, joka tekee työn puolestamme. Muuten voimme myös määrittää nimiavaruuden manuaalisesti.

Nimiavaruuden määrittämisen jälkeen meidän on viitattava XPath-lausekkeeseen luodun nimiavaruuden avulla.

Kun napsautat 'Ilmoita'-painiketta, kaksi nimiavaruutta ponnahtaa esiin, koska meillä on kaksi URI:a. Toinen niistä on skeema URL ja toinen vastaa varsinaista verkkopalvelua URLXPath-lausekkeeseen viitattaessa on käytettävä varsinaista nimiavaruutta, jossa verkkopalvelu sijaitsee, EI skeeman nimiavaruutta. Määritellyt rivit näkyvät XPath-ruudun yläosassa alla olevan kuvan mukaisesti.

XPath-väittämisikkunassa ilmoitetut soap- ja ns1-nimiavaruudet

ilmoittaa nimiavaruudesta soap='http://schemas.xmlsoap.org/soap/envelope/';

julistaa nimiavaruuden ns1='http://tempuri.org/';

XPath-väittämisikkuna heti Declare-painikkeen napsauttamisen jälkeen

Vaihe 3: Nyt meidän on annettava validoitavan XML-solmun XPath.

//ns1:AddResult Antaa meille välissä olevan solmun arvon & ja ns1 vastaa ilmoitettua nimiavaruutta, joka osoittaa osoitteeseen "http://tempuri.org/"

Kun olet syöttänyt XML:n, meidän on napsautettava 'Valitse nykyisestä', jotta nykyisen vastauksen arvo poimitaan vertailua varten.

XPath-lauseke syötettiin, kun Valitse nykyisestä -kohta on korostettu

Vaihe 4: Tähän mennessä

  1. Kun nimitilat on ilmoitettu, olemme syöttäneet XML-solmun XPath-osoitteen, joka meidän on vahvistettava.
  2. Meidän on napsautettava 'Valitse nykyisestä', jotta nykyinen arvo asetetaan odotetuksi arvoksi.
  3. Nykyinen arvo näytetään käyttäjälle, jota voimme tarvittaessa muuttaa.
  4. Napsauta 'Tallenna'.

XPath Match -määritys, jossa näkyy odotettu arvo ja Tallenna-painike

Vaihe 5: Lisätty väite kohdassa SoapUI näytetään alla olevan mukaisesti.

Väitteet-välilehti, jossa näkyy lisätty XPath Match -väite

Scripting Assertions

Tämä väitetekniikka on laajimmin käytetty, koska se on erittäin vaikeaa hallita ja ylläpitää satoja väitteitä.

SoapUI käyttää joko Groovy Käsikirjoitus tai JavaKäsikirjoitus skriptausväitteitä varten. Skriptaustekniikkaa käytetään kehitystyössäping SOAP-testauskehys. Skriptausväittämiä käytetään seuraavissa olosuhteissa.

  • Skriptaaminen antaa käyttäjälle mahdollisuuden suorittaa tiettyjä toimintoja ennen testitapauksen suorittamista ja sen jälkeen käyttämällä vastaavasti set up- ja tear down -metodeja. Set up on toiminto, joka suoritetaan ennen tietyn metodin suorittamista (esimerkki – Objektin luonti ja alustus), kun taas tear down on toiminto, joka suoritetaan metodin suorittamisen jälkeen (esim. Objektien tuhoaminen ja siivoaminen). Tämä ominaisuus ei ole käytettävissä muissa väittämätyypeissä, ja se voidaan tehdä vain koodaamalla.
  • Sen avulla käyttäjät voivat avata/sulkea projektin, alustaa tai puhdistaa projektin asetuksia ja työskennellä ympäristömuuttujien kanssa, mikä on erittäin hyödyllistä skriptien aikana.
  • Se auttaa meitä vahvistamaan dynaamista vastaussisältöä.
  • Skriptausväittämiä käytetään käyttäjän määrittämien väitteiden luomiseen, joita EI ole ennalta määritelty SoapUI.

Script-väitteen osoittamiseksi SoapUI, käytämme WSDL-laskinta ja aiemmin luomaamme testitapausta 'Add'.

Vaihe 1: Groovy-skriptin lisääminen tapahtuu samalla tavalla kuin muidenkin väitteiden, paitsi että väite ei ole ennalta määritetty. Sen sijaan se on käyttäjän määrittelemä väite, joka tarjoaa enemmän joustavuutta kuin sisäänrakennetut väitteet.

Valitse testivaihe, jota vasten väite on lisättävä.

Testivaihe valittu kohdassa SoapUI navigaattori ennen väitteen lisäämistä

Napsauta "Lisää väite" -painiketta alla olevan kuvan mukaisesti.

Lisää väite -painike testivaiheen väitteiden työkalupalkissa

Vaihe 2: Valitse nyt Väite-luokka.

  1. Tässä tapauksessa se on Script.
  2. valita SoapUI Script Assertion eikä siihen liity alatyyppejä.
  3. Napsauta Lisää.

Lisää väite -valintaikkuna, jossa on valittuna Skripti-luokka

Vaihe 3: Skriptivalintaikkuna avautuu, ja käyttäjä voi kirjoittaa itse määrittämänsä komentosarjan vastauksen XML:n validoimiseksi.

Tyhjä SoapUI skriptiväitteiden muokkausikkuna

Vaihe 4: Kirjoitetaanpa nyt näppärä skripti konversioasteen validoimiseksi. Skripti on liitteenä alla kommentteineen. On suositeltavaa, että sinulla on tietoa Java Käsikirjoitus tai Groovy Käsikirjoita ennen kuin yrität kirjoittaa oman käsikirjoituksen.

//Define Groovy Utils and holder for validating the XML reponse content
def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context)
def holder = groovyUtils.getXmlHolder(messageExchange.responseContent)

//Define the NameSpace
holder.namespaces["ns1"] = "http://tempuri.org/"

//Get the Value of the Node 'AddResult' and assign to a variable
def addResult = holder.getNodeValue("//ns1:AddResult")

//print the value of the result in the Output panel
log.info "The result value for integers is " + addResult

//Comparing the value to print 'Pass' or 'Fail'
if(addResult=="46")
{ log.info "Pass" }
else
{ log.info "fail"}
  1. Napsauta "Suorita"-painiketta käynnistääksesi suoritus.
  2. Komentosarjan tulos näkyy Output-ruudussa. Se on tulostanut sekä tulosarvon että lopputuloksen (hyväksytty tai epäonnistunut).
  3. Näytölle tulee tieto, että "Script Assertion Passed". Napsauta OK.

Huomautus: Viimeinen Information-ponnahdusikkuna näkyy aina viestillä "Script Assertion Passed" niin kauan kuin komentosarja on syntaktisesti oikein. Sillä ei ole korrelaatiota käsikirjoituksen sisältämän väitteesi kanssa.

Skriptin väitteen tulosruutu tulostaa tulosarvon ja läpäisee

OK

Vaihe 5: Väite-välilehti näyttää nyt kaikki tähän testikokonaisuuteen lisäämämme väitteet ja kunkin väitteen tilan.

Väitteet-välilehti, jossa luetellaan kaikki testisarjaan lisätyt väitteet

Vaihe 6: Nyt

  1. Valitse Test Suite Navigator-puusta
  2. Napsauta Suorita-painiketta
  3. Tulokset näytetään koko testipaketin osalta.

Testisarjan suorituksen tulokset kaikkien väitteiden suorittamisen jälkeen

XQuery-match-väite

Se käyttää XQuery-lauseketta sisällön valitsemiseen kohdeominaisuudesta. Tarvitsemme paljon suuremman XML-vastauksen ymmärtääksemme paremmin XQuery-väitteen. SoapUITuodaanpa vielä yksi WSDL alla olevan kuvan mukaisesti: http://www.webservicex.net/medicareSupplier.asmx?WSDL

Huomautus: Tässä ohjeessa käytetyt julkiset webservicex.net-demon päätepisteet eivät ole enää luotettavasti tavoitettavissa, joten alla olevat pyyntö- ja vastausnäyttökuvat pidetään referenssiesimerkkeinä. Kaikki toistuvan solmujoukon palauttavat WSDL:t käyttävät XQuery-väittämää täsmälleen samalla tavalla.

Vaihe 1: Napsauta hiiren kakkospainikkeella olemassa olevaa projektia ja valitse 'Lisää WSDL'.

Napsauta hiiren kakkospainikkeella olevaa valikkoa SoapUI projekti, jossa näkyy Lisää WSDL

Vaihe 2: Lisää WSDL -valintaikkuna avautuu. Jätä muut asetukset oletusasetuksiksi ja napsauta OK-painiketta.

Lisää WSDL-valintaikkuna oletusarvoisilla tuontiasetuksilla

Vaihe 3: Kaikki toiminnot on lueteltu alla olevan mukaisesti.

Medicare-toimittajan WSDL-toiminnot lueteltuna navigointipuussa

Vaihe 4: Lisätään nyt Testitapaus samassa testisarjassa, jota varten olimme luoneet Testaus valuuttamuunnin.

Uusi TestCase-vaihtoehto olemassa olevassa testipaketissa

Vaihe 5: Syötä testitapauksen nimi ja napsauta OK-painiketta

Testitapauksen nimen syöttäminen Uusi testitapaus -valintaikkunaan

Vaihe 6: Testitapaus luodaan alla olevan kuvan mukaisesti.

Äskettäin luotu testitapaus kohdassa SoapUI navigaattori puu

Vaihe 7: Lisää uusi testivaihe, jonka tyyppi on 'Saippuatestipyyntö', kuten alla on esitetty.

Lisää vaihevalikko, jossa SOAP-testipyyntö on valittu

Vaihe 8: Syötä testivaiheen nimi. Sanotaan esimerkiksi Toimittaja_kaupungin mukaan, mikä olisi merkityksellisempi nimi. Napsauta 'OK'.

Uuden testivaiheen nimeäminen Toimittajan_kaupunkittain

Vaihe 9: Valitse Operajonka haluamme vahvistaa. Tässä tapauksessa se on 'MedicareSupplierSoap -> GetSupplierByCity'. Napsauta 'OK'.

GetSupplierByCity-toiminnon valitseminen testivaiheelle

Vaihe 10: Syötä testitapauksen nimi ja napsauta 'OK'.

SOAP-testipyynnön nimen vahvistaminen

Vaihe 11: Pyynnön XML-jäsennys näytetään alla olevan mukaisesti.

Luotu GetSupplierByCity-pyynnön XML-rakenne

Vaihe 12: Etsitään nyt kaikki New York Cityn toimittajatiedot.

Voit tehdä tämän lisäämällä seuraavat rivit koodiisi.

<GetSupplierByCity xmlns="http://www.webservicex.net/">

<City>New York</City>

</GetSupplierByCity>

WSDL alla URL – http://www.webservicex.net/medicareSupplier.asmx?op=GetSupplierByCity

Pyynnön XML-tiedostoa on muokattu siten, että kaupungin arvona on New York

Vaihe 13: Testin suorittamisen jälkeen saamme alla olevan vastauksen

GetSupplierByCity-vastaus, joka sisältää toistuvia toimittajatietoja

Vaihe 14: Oletetaan, että meidän on validoitava kaikki toimittajanumerot. Emme voi käyttää XPath-väityksiä, koska tarvitsemme satoja XPath-väityksiä. Siksi XQueryn käyttö on tässä tapauksessa väistämätöntä.

XQuery Assertion auttaa meitä vahvistamaan ryhmän XML-vastauksia, jotka ovat luonteeltaan toistuvia.

Toistuvat SupplierData-solmut, joiden yli XQuery iteroi

Vaihe 15: Napsauta nyt 'Lisää väite' -painiketta.

  1. Valitse "Väitteen luokka" – tässä tapauksessa omaisuuden sisältö.
  2. Valitse väitteen tyypiksi "XQuery Assertion"
  3. Napsauta Lisää.

XQuery-väite valittuna Ominaisuussisältö-kategoriassa

Vaihe 16: Samoin kuin XPath-väitteen tapauksessa, meidän on määriteltävä nimiavaruus.

  1. Napsauta 'Ilmoita'-painiketta salliaksesi automaattisesti SoapUI nimiavaruuden määrittämiseksi. Määritys-painikkeen napsauttamisen jälkeen käyttäjälle näytetään ponnahdusikkuna, jossa on viesti 'määritä nimiavaruus sen sijaan skeemasta'. Jatka napsauttamalla 'Kyllä' alla olevan kuvan mukaisesti.
  2. Kaikkien toimittajanumeroiden hakemiseksi meidän on kirjoitettava XPath-kysely ja sijoitamme sen kohtaan < Toimittajanumero> ja Tunnisteet.
  3. Napsauta 'Valitse nykyisestä', joka suoritetaan nykyisestä vastauksesta.
  4. Kun napsautat 'Valitse nykyisestä', kaikkien toimittajien numerot luetellaan.
  5. Napsauta 'Tallenna'.

Nimiavaruuden määrittäminen skeeman vahvistusponnahdusikkunasta

Huomautus: Kun painat 'Ilmoita'-painiketta, saatat saada erilaisia ​​tuloksia. URLn nimiavaruuden määrittelynä, mutta koodauksessa otetaan huomioon varsinainen verkkopalvelun sijainnin nimiavaruus.

Valmis XQuery-lauseke nimiavaruusmäärittelyineen näyttää tältä.

// Namespace declaration
declare namespace soap='http://schemas.xmlsoap.org/soap/envelope/';
declare namespace ns1='http://www.webservicex.net/';
declare namespace x = '';

// Placing the result in Myresult Tags

{
// Iterating through all the supplier number
for $x in //ns1:GetSupplierByCityResponse/ns1:SupplierDataLists/ns1:SupplierDatas/ns1:SupplierData

//Return all the Supplier number within ‘SupplierNumber’ Tags.
return {data($x/ns1:SupplierNumber)}
}

XQuery-lausekeikkuna, joka listaa jokaisen toimittajan numeron

Vaihe 17: XQuery-väite suoritetaan ja näyttää lopputuloksen 'Väite'-paneelissa alla olevan kuvan mukaisesti. Olemme nyt lisänneet onnistuneesti XQuery-väiteominaisuuden, jonka avulla olemme validoineet kaikki toimittajanumerotiedot. Niitä verrataan todellisiin tietoihin joka kerta, kun pyyntö lähetetään web-palvelimelle.

Huomautus: Todellisia arvoja ei näytetä. Jos kaikki todelliset arvot ovat samat kuin odotetut arvot, se näyttää VALID, muuten se näyttää 'Failed'.

Väittämäpaneeli, joka näyttää XQuery-väittämän tuloksen

Milloin käyttää sisäänrakennettua väitettä?

Kun sekä osoita ja napsauta - että skriptiasetukset on käsitelty, käytännön kysymys on, kumpaan kannattaa tarttua.

  • Kun vastaus on lyhyt niin, että se voidaan vahvistaa käyttämällä jotakin näistä sisäänrakennetuista väitteistä.
  • Voimme käyttää myös sisäänrakennettua väitettä, jos verkkopalvelimelta lähetetty vastaus on aina staattista. Jos se on dynaaminen, emme voi väittää sitä käyttämällä sisäänrakennettuja väitteitä.
  • Kun sisäänrakennettujen väitteiden, kuten aikakatkaisu- ja turvallisuusväitteiden, käytöstä tulee väistämätöntä.
  • Sisäänrakennettu Assertions sopii melko hyvin kertakäyttöön, jossa testejä ei tarvitse toistaa.

Väitteet Asetukset

Luotuja väitteitä voidaan parhaiten hallita ohjauspaneelin avulla, joka on korostettu alla.

Väitteiden työkalupakin ohjauspaneeli SoapUI

Luotujen väitteiden avulla testaajat voivat määrittää seuraavat asiat väitteet-työkalulaatikosta.

Vaihtoehto Tuotetiedot
Siirrä väitettä ylöspäin -kuvake Valittu väite siirtyy järjestyksessä ylöspäin.
Väitteen siirtäminen alas -kuvake Valittu väite siirtyy järjestyksessä alaspäin.
Poista väite -kuvake Poistaa valitun väitteen
Väitteen määrittäminen tai muokkaaminen -kuvake Määritä/muokkaa valittu väite uudelleen.

Alla on ominaisuudet, jotka ovat saatavilla yksinomaan Pro-versiossa SoapUI, nyt toimitetaan nimellä ReadyAPIPro-versio auttaa meitä myös ryhmittelemään väitteitä, jotta voimme lisätä luotuihin väitteisiin yhden lisävalidointikerroksen.

  • JA: Kaikki väitteet arvioidaan VALID-väitteinä, mikä johtaa PASSED-ryhmäehtoon.
  • TAI: Vähintään yhden ryhmän väitteistä on oltava VALID, jotta ryhmälle HYVÄKSYTTY-ehto voidaan esittää.
  • Pro-versio mahdollistaa myös Väitteiden kloonaus: Tämä asetus antaa testaajille mahdollisuuden kopioida väitteen eri testausvaiheeseen samassa tai eri projektissa.
  • Poista käytöstä/ota käyttöön väitteet: Tämä vaihtoehto mahdollistaa minkä tahansa ryhmitellyn tai ryhmittelemättömän väitteen poistamisen käytöstä tai käyttöönoton. Jos väite on poistettu käytöstä, se näkyy harmaana, ja testitapauksen suorituksen yhteydessä poistettuja väitteitä ei suoriteta.
  • Väitteiden ryhmittelyn purkaminen: Ryhmiteltyjen väitteiden ryhmittely voidaan purkaa, jos testaajat niin päättävät.

Täydellinen luettelo menetelmistä, jotka ovat saatavilla eri väitetyypeissä

Alla oleva taulukko kerää kaikki edellä käsitellyt väitteet ryhmiteltyinä sen mukaan, missä luokassa ne näkyvät Lisää väite -valintaikkunassa.

Toteutusmekanismi Tuotetiedot
OMAISUUS SISÄLTÖ
Sisältää Etsii määritetyn merkkijonon olemassaoloa. Se tukee myös säännöllistä lauseketta.
Ei Sisältää Etsii määritetyn merkkijonon olemattomuutta. Se tukee myös säännöllistä lauseketta.
XPath Match Käyttää XPath-lauseketta kohdesolmun ja sen arvojen valitsemiseen.
XQuery Match Käyttää XQuery-lauseketta sisällön valitsemiseen kohdeominaisuudesta.
Vaatimustenmukaisuus, tila, standardit
HTTP Lataa kaikki resurssit Vahvistaa HTML-dokumentin latauksen jälkeen ja se pätee kaikkiin HTML-koodia sisältäviin ominaisuuksiin.
Virheellinen HTTP-tila Codes Tarkistaa, sisältääkö HTML-vastaus tilakoodin, joka ei ole määritettyjen koodien luettelossa.
Ei SOAP-vika Tarkistaa, ettei viimeksi vastaanotettu viesti ole SOAP-virhe. On hyvin ilmeistä, että se soveltuu vain SOAP-testivaiheisiin.
Kaavioyhteensopivuus Tarkistaa, onko viimeksi vastaanotettu viesti WSDL- tai WADL-standardin skeeman määritelmän mukainen. Sopii hyvin SOAP- ja REST-testivaiheisiin.
SOAP-vika Tarkistaa, onko viimeksi vastaanotettu viesti SOAP-virhe. Se on käänteinen 'NOT SOAP' -virheväitteille.
SOAP-vastaus Tarkistaa, onko viimeisin vastaanotettu vastaus kelvollinen SOAP-vastaus ja pätee vain SOAP-testipyyntövaiheisiin.
Kelvollinen HTTP-tila Codes Tarkistaa, sisältääkö HTML-vastaus tilakoodin, joka on määriteltyjen koodien luettelossa. Se on käänteinen kuin 'Virheellinen HTTP-tila'. Codes:n väite.
WS-osoitepyyntö Tarkistaa, sisältääkö viimeisin vastaanotettu pyyntö asianmukaiset WS-osoiteotsikot.
WS-osoitevastaus Tarkistaa, sisältääkö viimeisin vastaanotettu vastaus asianmukaiset WS-osoiteotsikot.
WS-Security Status Vahvistaa, sisältääkö viimeisin vastaanotettu viesti kelvollisia WS-Security-otsikoita ja pätee vain SOAP-pyyntöihin.
Käsikirjoitus
Käsikirjoituksen väite Antaa käyttäjien suorittaa mukautetun komentosarjan käyttäjän määrittämien tarkistusten suorittamiseksi.
SLA
Vastaus SLA Vahvistaa, jos viimeksi vastaanotetun vastauksen vastausaika oli määritetyn rajan sisällä.
JMS
JMS-tila Varmistaa, että testivaiheen JMS-pyyntö on suoritettu onnistuneesti ja pätee testivaiheisiin, joissa on JMS-päätepiste.
JMS-aikakatkaisu Tarkistaa, eikö testivaiheen JMS-vaste kestänyt määritettyä kestoa pidempään.
Turvallisuus
Altistuminen arkaluonteiselle tiedolle Tarkistaa, ettei vastausviesti paljasta kohdejärjestelmää koskevia arkaluontoisia tietoja. Voimme käyttää tätä väitettä REST-, SOAP- ja HTTP-testivaiheissa.

LATAA YDELLISET VAATIMUKSET SISÄLTÄÄ SOAPUI-PROJEKTI

Yleiset virheet ja vianmääritys

Useimmat väitteiden epäonnistumiset tractakaisin pieneen joukkoon virheitä, joten tarkista ne ennen lausekkeen uudelleenkirjoittamista.

  • Käytä oikeaa nimiavaruutta. Nimiavaruuden tulisi olla URL missä verkkopalvelu sijaitsee.
  • Jos kehitysvaiheessa tulee virheping skriptausväitteen tulostamiseksi käytä 'log.info'-funktiota muuttujien sisällön tulostamiseen.
  • Jos et ole saanut haluttua tulosta, tarkista, onko pyynnössä välitetty kelvollinen syöte.

Esimerkiksi valuuttamuuntimessa, jos syötät 'intA':n muodossa 'x', joka ei ole kokonaisluku, tuloste heittää virhekoodin 'SOAP-Client', mikä tarkoittaa, että ongelma on asiakaspuolelta välitettävässä parametrissa. Virheellisen arvon sisältävä pyyntö näytetään ensin.

SoapUI pyyntö välittää virheellisen, ei-kokonaislukuisen arvon intA:lle

Vastaus palauttaa virhekoodin tuloksen sijaan, kuten alla on esitetty.

SOAP-asiakasohjelma palautti virhekoodin SoapUI vastauseditori

Varmista, että käytät oikeaa syntaksia käyttäessäsi XPath- ja XQuery-väittämiä. ÄLÄ käytä pistettä(.) kaksoispisteen(:) sijaan yllä olevaa väittämää käytettäessä. Syntaksi on //nimiavaruus:Taginnimi eikä //nimiavaruus.tagnimi. Jos teet niin, saatat saada viestin "EI osumaa nykyisessä vastauksessa", vaikka tagin nimi olisi oikein.

Nykyisessä vastauksessa ei osumaa -virhe, jonka aiheuttaa virheellinen XPath-syntaksi

UKK

Mikä tahansa numero. SoapUI käyttää kaikkia otantatestausvaiheeseen liitettyjä väitteitä sen suorittamisen jälkeen, ja vaihe merkitään epäonnistuneeksi testitapausnäkymässä, jos yksikin näistä väitteistä epäonnistuu.

Se vertaa XML-viestiä odotettuun dokumenttiin solmu solmulta, joten valitut kentät voidaan jättää huomiotta tai yhdistää löyhästi sen sijaan, että koko hyötykuormaa käsiteltäisiin yhtenä tavallisena merkkijonona.

Avoin lähdekoodi SoapUI kattaa kiinteistösisällön, vaatimustenmukaisuuden, komentosarjojen, palvelutasosopimukset (SLA), JMS:n ja tietoturvan. ReadyAPI lisää massaaping, kloonaus, JDBC-tarkistukset ja ohjauksen ottaminen käyttöön tai poistaminen käytöstä.

Tekoälymallit lukevat esimerkkivastauksen ja ehdottavat XPath- tai XQuery-lausekkeita, ehdottavat raja-arvoja ja merkitsevät kenttiä, jotka muuttuvat joka ajokerralla – käsin kirjoitetun nimiavaruuden ja lausekkeiden vähentäminen toimii huomattavasti.

Kyllä. Lentoperämies automaattisesti täydennetyt GroovyUtils- ja XmlHolder-malliesimerkki. Suorita aina ensin skripti, koska syntaktisesti kelvollinen skripti raportoi skriptin vahvistuksen läpäistyksi vertailustasi riippumatta.

Kyllä. Väittämän sisältökentät tukevat ominaisuuksien laajennusta, joten odotettu arvo voidaan hakea projektin tai testitapauksen ominaisuudesta literaalin sijaan, mikä pitää yhden väitteen uudelleenkäytettävänä eri ympäristöissä.

Epäonnistunut väite merkitsee testivaiheensa epäonnistuneeksi testitapausnäkymässä ja kirjoittaa vastaavan FAILED-merkinnän epäonnistumisen yksityiskohtineen ikkunan alareunassa olevaan testisuorituslokiin.

Sisältää, Ei sisällä, XPath-osuma, XQuery-osuma, Vastauksen palvelutasosopimus, Skripti, kelvolliset ja virheelliset HTTP-tilakoodit, Arkaluonteisten tietojen paljastuminen ja Kaavion yhteensopivuus WADL:ää tai pääteltyä kaavaa vastaan.

Tiivistä tämä viesti seuraavasti: