1 / 15

RESTful Web Service tesztelése

RESTful Web Service tesztelése. Takács Viktor 2014.03.07. Mi is az a REST?. Representational State Transfer (Roy Fielding, 2000) Erőforrások egyedi azonosítóval (URI, pl. /resources/persons/Bob) Állapotmentes (Két kérés között nem őriz meg semmit, a kérésben mindent el kell küldeni)

gabe
Download Presentation

RESTful Web Service tesztelése

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. RESTful Web Service tesztelése Takács Viktor 2014.03.07.

  2. Mi is az a REST? • Representational State Transfer (Roy Fielding, 2000) • Erőforrások egyedi azonosítóval (URI, pl. /resources/persons/Bob) • Állapotmentes (Két kérés között nem őriz meg semmit, a kérésben mindent el kell küldeni) • Többféle reprezentáció (JSON, XML, stb.) • Kliens-szerver kapcsolat

  3. A web is REST rendszer! • HTTP protokoll (állapot nélküli, erőforrások egyedi URI-val) • CRUD-nak megfelelő HTTP metódusok: • Create -> POST • Retrive -> GET • Update -> PUT • Delete -> DELETE • A web is kliens-szerver architektúra

  4. REST vs SOAP • REST egyszerűbb (képeslap vs levél borítékban), de mindent tud, amit a SOAP • REST lazább (nincs definíció - wsdl) • A „nagyok” egyre inkább a REST-et részesítik előnyben • Többféle reprezentáció (SOAP-ban csak xml) • Egyébként mindkettő platform és nyelv független

  5. Mi kell a teszteléshez? • Kell egy (a tesztelés alatt) elérhető REST szolgáltatás • Kell valamilyen REST kliens

  6. REST kliensek • Platform és nyelvfüggő API-kal (például Java-ban JAX-RS client API-val) • Böngészőbe integrált REST kliensek (pl. Firefox, Chrome)

  7. Mit is tesztelünk? • Elérhető-e az szolgáltatás (erőforrás)? Jön-e válasz a kérésre? • Adott HTTP metódussal meghívható? (GET, POST, stb.) • Adott média formátumban fogad-e kérést illetve adott média formátumban jön-e a válasz? (pl. JSON) • Megfelelő-e a válasz tartalma?

  8. Könyvesbolt teszteset

  9. JAX-RS • Java API for RESTful Web Services • Interfészgyűjtemény sokféle implementációval (pl. Jersey, RESTEasy) • Szerver és kliens oldali API is • Annotáció alapú konfiguráció

  10. JAX-RS szerver oldalon

  11. JAX-RS kliens oldalon

  12. RESTAssured teszt

  13. Automatizált tesztek • A teszt maga gondoskodik róla, hogy a szolgáltatás elérhető legyen a tesztelés idején • A tesztek bizonyos események hatására (pl. commit, időzítés) automatikusan lefutnak (Continuous Integration)

  14. Arquillian teszt

  15. Köszönöm a figyelmet!

More Related