SlideShare a Scribd company logo
testing web services
TIME TO REST
Who am I
Iurii Kutelmakh
email: iurii.kutelmakh@gmail.com
skype: ykutelmakh
linkedIn: linkedin.com/in/ykutelmakh
Senior QA Engineer
@ DataArt
Director, lecturer
@ Lviv IT School
DJ
@ Sunday Sofa Podcast
AGENDA
web services
SOAP vs RESTful
web services testing: from manual to automation
web services
Time to REST: testing web services
Web services are open standard
(XML, SOAP, HTTP etc.) based web applications
that interact with other web applications for
the purpose of exchanging data
web services characteristics:
- document based (xml / json)
- cross platform
- widely available (http / ftp)
- synchronous / asynchronous
Time to REST: testing web services
Time to REST: testing web services
Standart SOAP service components:
•SOAP (Simple Object Access Protocol)
•UDDI (Universal Description, Discovery and Integration)
•WSDL (Web Services Description Language)
Time to REST: testing web services
Time to REST: testing web services
soap request soap response
HTTP/1.1 200 OK
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Date: Wed, 14 Jan 2015 15:33:32 GMT
Pragma: no-cache
Content-Length: 122
Content-Type: application/xml
Accept: application/xml
. . .
<?xml version="1.0" encoding="utf-8" ?>
<SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
...>
<SOAP-ENV:Body>
<method:GetCustomerInfoResponse>
<name>Test Name</name>
<phone>+380000000000</phone>
<street1>Hutorivka 35</street1>
<street2></street2>
<city>Lviv</city>
<state></state>
<postalcode>79000</postalcode>
<country>Ukraine</country>
<method:OutputParam>Value</method:OutputParam>
</method:GetCustomerInfoResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
POST http://{url}?parameter=value HTTP/1.1
Host: HostServerName
Content-type: text/xml; charset=utf-8
Content-length: 350
SoapAction: http://tempUri.org/GetCustomerInfo
...
<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<GetCustomerInfo xmlns="http://tempUri.org/">
<CustomerID>18102016</CustomerID>
<OutputParam />
</GetCustomerInfo>
</soap:Body>
</soap:Envelope>
Time to REST: testing web services
REST (Representational State Transfer)
permedia systems, describing the software engineering principles guiding REST and the interaction constrain
while contrasting them to the constraints of other architectural styles.
stateful vs stateless
stateful means that there is memory of the past.
Previous transactions are remembered and may affect the current transaction.
stateless means there is no memory of the past.
Every transaction is performed as if it were being done for the very first time.
The Representational State Transfer (REST) style
is an abstraction of the architectural elements within a distributed hypermedia
system.
The key abstraction of information in REST is a resource
1. Uniform Interface
Individual resources are identified using URLs.
2. Stateless Interactions
None of the clients context is to be stored on the server side between the request.
3. Cacheable
Clients can cache the responses.
4. Client-Server
The clients and the server are separated from each other.
5. Layered System
At any time client cannot tell if it is connected to the end server or to an intermediate.
6. Code on Demand
An optional constraint where the server temporarily extends the functionality of a client by the transfer of
executable code.
HATEOAS stands for Hypertext As The Engine Of Application State.
It means that hypertext should be used to find your way through the API.
GET /account/12345 HTTP/1.1
HTTP/1.1 200 OK
<?xml version="1.0"?>
<account>
<account_number>12345</account_number>
<balance currency="usd">100.00</balance>
<link rel="deposit" href="/account/12345/deposit" />
<link rel="withdraw" href="/account/12345/withdraw" />
<link rel="transfer" href="/account/12345/transfer" />
<link rel="close" href="/account/12345/close" />
</account>
web services testing
good to know …
In computer programming, an application programming interface (API) is a set of subroutine
definitions, protocols, and tools for building software and applications
In the simplest terms,
APIs are sets of requirements that govern how one application can talk to another
good to know …
request methods:
-GET
-POST
-PUT
-DELETE
-OPTIONS, TRACE, HEAD, PATCH
headers:
-Cookie
-Location
-Date
-Content-Type
-etc
status codes:
-100 (info)
-200 (success)
-300 (redirect)
-400 (client error)
-500 (server error)
testing technics:
-functional
-performance
-security
-static testing
Request:
- boundary values
- equivalence partitioning
Response:
- data type
- data structure
- data fullness
practice
tools:
- Postman
- SoapUI
- Automation framework (Java + TestNg + RestAssured)
Time to REST: testing web services
thanks

More Related Content

What's hot (20)

PPTX
Web services - A Practical Approach
Madhaiyan Muthu
 
PPT
SOAP-UI The Web service Testing
Ganesh Mandala
 
PPTX
The ASP.NET Web API for Beginners
Kevin Hazzard
 
PPTX
SOAP vs REST
Nadia Boumaza
 
PPTX
ASP.NET WEB API Training
Chalermpon Areepong
 
PPTX
Web Service Testing By Sheshadri Mishra
Sheshadri Mishra
 
PDF
Владимир Логвинов - Rest-Assured - легкий способ автоматизации тестирования REST
Web Tech Fun
 
PPTX
ASP.NET Mvc 4 web api
Tiago Knoch
 
PPTX
Soap ui introduction
Ikuru Kanuma
 
PPTX
Frame switcher library
Roman Khachko
 
PPTX
Introduction to SoapUI day 3
Qualitest
 
PPTX
ASP.NET Web API
habib_786
 
PPTX
Overview of java web services
Todd Benson (I.T. SPECIALIST and I.T. SECURITY)
 
PDF
SOAP-based Web Services
Katrien Verbert
 
KEY
Web API Basics
LearnNowOnline
 
PPT
Excellent rest using asp.net web api
Maurice De Beijer [MVP]
 
PPT
Webservices testing using SoapUI
Testing World
 
PPTX
Learn SoapUI
David Ionut
 
PPTX
Testing soapui
Shahid Shaik
 
Web services - A Practical Approach
Madhaiyan Muthu
 
SOAP-UI The Web service Testing
Ganesh Mandala
 
The ASP.NET Web API for Beginners
Kevin Hazzard
 
SOAP vs REST
Nadia Boumaza
 
ASP.NET WEB API Training
Chalermpon Areepong
 
Web Service Testing By Sheshadri Mishra
Sheshadri Mishra
 
Владимир Логвинов - Rest-Assured - легкий способ автоматизации тестирования REST
Web Tech Fun
 
ASP.NET Mvc 4 web api
Tiago Knoch
 
Soap ui introduction
Ikuru Kanuma
 
Frame switcher library
Roman Khachko
 
Introduction to SoapUI day 3
Qualitest
 
ASP.NET Web API
habib_786
 
SOAP-based Web Services
Katrien Verbert
 
Web API Basics
LearnNowOnline
 
Excellent rest using asp.net web api
Maurice De Beijer [MVP]
 
Webservices testing using SoapUI
Testing World
 
Learn SoapUI
David Ionut
 
Testing soapui
Shahid Shaik
 

Viewers also liked (20)

PPTX
Rest assured
Yaniv Rodenski
 
ODP
Testing RESTful Webservices using the REST-assured framework
Micha Kops
 
PDF
2015-StarWest presentation on REST-assured
Eing Ong
 
PPT
Keyword Driven Testing
anandarajta
 
PPTX
Autoscalable open API testing
Yevheniia Tymoshchuk
 
PPTX
Coherent REST API design
Frederik Mogensen
 
PDF
Heleen Kuipers - presentatie reinventing organisations
ForzesNL
 
ODP
Creating a Java EE 7 Websocket Chat Application
Micha Kops
 
PPTX
Frisby®
juan1229
 
PPTX
Testing RESTful web services with REST Assured
Bas Dijkstra
 
PDF
Continuous Delivery Testing @HiQ
Tomas Riha
 
PDF
Auto-scaled Concourse CI on AWS w/o BOSH
佑介 九岡
 
PPTX
Frisby Api automation
Dineesha Suraweera
 
PPTX
Frisby: Rest API Automation Framework
Quovantis
 
PPTX
TestNG Framework
Levon Apreyan
 
PPT
testng
harithakannan
 
PDF
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
Indrajit Poddar
 
PPTX
Rest assured
Varun Deshpande
 
PPTX
Api testing
Keshav Kashyap
 
PDF
How to Automate API Testing
Bruno Pedro
 
Rest assured
Yaniv Rodenski
 
Testing RESTful Webservices using the REST-assured framework
Micha Kops
 
2015-StarWest presentation on REST-assured
Eing Ong
 
Keyword Driven Testing
anandarajta
 
Autoscalable open API testing
Yevheniia Tymoshchuk
 
Coherent REST API design
Frederik Mogensen
 
Heleen Kuipers - presentatie reinventing organisations
ForzesNL
 
Creating a Java EE 7 Websocket Chat Application
Micha Kops
 
Frisby®
juan1229
 
Testing RESTful web services with REST Assured
Bas Dijkstra
 
Continuous Delivery Testing @HiQ
Tomas Riha
 
Auto-scaled Concourse CI on AWS w/o BOSH
佑介 九岡
 
Frisby Api automation
Dineesha Suraweera
 
Frisby: Rest API Automation Framework
Quovantis
 
TestNG Framework
Levon Apreyan
 
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
Indrajit Poddar
 
Rest assured
Varun Deshpande
 
Api testing
Keshav Kashyap
 
How to Automate API Testing
Bruno Pedro
 
Ad

Similar to Time to REST: testing web services (20)

PPTX
SOA Testing
Roopesh Kohad
 
PPTX
Soap UI and postman
Tushar Agarwal
 
PDF
Webservices Testing PPT.pdf
AbhishekDhotre4
 
PPTX
Rest webservice ppt
sinhatanay
 
PDF
Testing RESTful Web Services
TechWell
 
PDF
A2 from soap to rest
Arnaud Bouchez
 
PPTX
Lies you have been told about REST
darrelmiller71
 
PPT
53 hui homework2
huis89
 
PPTX
Mini-Training: Let's have a rest
Betclic Everest Group Tech Team
 
PPTX
An Overview of Web Services: SOAP and REST
Ram Awadh Prasad, PMP
 
PPTX
RESTful APIs in .NET
Greg Sohl
 
PDF
Day1 : web service basics
Testing World
 
PDF
Web Services Testing
DataArt
 
PPTX
Restful webservice
Dong Ngoc
 
PPTX
Introduction to Web Services
Jeffrey Anderson
 
PPT
ROA.ppt
KGSCSEPSGCT
 
PPTX
Rest vs Soap
Alex Pérez Barón
 
PDF
Pentesting RESTful WebServices v1.0
n|u - The Open Security Community
 
PDF
wsadddddddddddddddddeb-servsdddddddddddaaaaaaaice.pdf
PrincessMonicaCostel
 
PDF
API Testing. Streamline your testing process.
Andrey Oleynik
 
SOA Testing
Roopesh Kohad
 
Soap UI and postman
Tushar Agarwal
 
Webservices Testing PPT.pdf
AbhishekDhotre4
 
Rest webservice ppt
sinhatanay
 
Testing RESTful Web Services
TechWell
 
A2 from soap to rest
Arnaud Bouchez
 
Lies you have been told about REST
darrelmiller71
 
53 hui homework2
huis89
 
Mini-Training: Let's have a rest
Betclic Everest Group Tech Team
 
An Overview of Web Services: SOAP and REST
Ram Awadh Prasad, PMP
 
RESTful APIs in .NET
Greg Sohl
 
Day1 : web service basics
Testing World
 
Web Services Testing
DataArt
 
Restful webservice
Dong Ngoc
 
Introduction to Web Services
Jeffrey Anderson
 
ROA.ppt
KGSCSEPSGCT
 
Rest vs Soap
Alex Pérez Barón
 
Pentesting RESTful WebServices v1.0
n|u - The Open Security Community
 
wsadddddddddddddddddeb-servsdddddddddddaaaaaaaice.pdf
PrincessMonicaCostel
 
API Testing. Streamline your testing process.
Andrey Oleynik
 
Ad

Recently uploaded (20)

PDF
유니티에서 Burst Compiler+ThreadedJobs+SIMD 적용사례
Seongdae Kim
 
PDF
Efficient, Automated Claims Processing Software for Insurers
Insurance Tech Services
 
PPTX
Comprehensive Guide: Shoviv Exchange to Office 365 Migration Tool 2025
Shoviv Software
 
PDF
Unlock Efficiency with Insurance Policy Administration Systems
Insurance Tech Services
 
DOCX
Import Data Form Excel to Tally Services
Tally xperts
 
PPTX
Platform for Enterprise Solution - Java EE5
abhishekoza1981
 
PDF
Why Businesses Are Switching to Open Source Alternatives to Crystal Reports.pdf
Varsha Nayak
 
PDF
Build It, Buy It, or Already Got It? Make Smarter Martech Decisions
bbedford2
 
PDF
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
 
PDF
Executive Business Intelligence Dashboards
vandeslie24
 
PPTX
Fundamentals_of_Microservices_Architecture.pptx
MuhammadUzair504018
 
PPTX
Java Native Memory Leaks: The Hidden Villain Behind JVM Performance Issues
Tier1 app
 
PDF
Capcut Pro Crack For PC Latest Version {Fully Unlocked} 2025
hashhshs786
 
PDF
Mobile CMMS Solutions Empowering the Frontline Workforce
CryotosCMMSSoftware
 
PDF
Salesforce CRM Services.VALiNTRY360
VALiNTRY360
 
PDF
vMix Pro 28.0.0.42 Download vMix Registration key Bundle
kulindacore
 
PPTX
Equipment Management Software BIS Safety UK.pptx
BIS Safety Software
 
PPTX
3uTools Full Crack Free Version Download [Latest] 2025
muhammadgurbazkhan
 
PPTX
MiniTool Power Data Recovery Full Crack Latest 2025
muhammadgurbazkhan
 
PPT
MergeSortfbsjbjsfk sdfik k
RafishaikIT02044
 
유니티에서 Burst Compiler+ThreadedJobs+SIMD 적용사례
Seongdae Kim
 
Efficient, Automated Claims Processing Software for Insurers
Insurance Tech Services
 
Comprehensive Guide: Shoviv Exchange to Office 365 Migration Tool 2025
Shoviv Software
 
Unlock Efficiency with Insurance Policy Administration Systems
Insurance Tech Services
 
Import Data Form Excel to Tally Services
Tally xperts
 
Platform for Enterprise Solution - Java EE5
abhishekoza1981
 
Why Businesses Are Switching to Open Source Alternatives to Crystal Reports.pdf
Varsha Nayak
 
Build It, Buy It, or Already Got It? Make Smarter Martech Decisions
bbedford2
 
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
 
Executive Business Intelligence Dashboards
vandeslie24
 
Fundamentals_of_Microservices_Architecture.pptx
MuhammadUzair504018
 
Java Native Memory Leaks: The Hidden Villain Behind JVM Performance Issues
Tier1 app
 
Capcut Pro Crack For PC Latest Version {Fully Unlocked} 2025
hashhshs786
 
Mobile CMMS Solutions Empowering the Frontline Workforce
CryotosCMMSSoftware
 
Salesforce CRM Services.VALiNTRY360
VALiNTRY360
 
vMix Pro 28.0.0.42 Download vMix Registration key Bundle
kulindacore
 
Equipment Management Software BIS Safety UK.pptx
BIS Safety Software
 
3uTools Full Crack Free Version Download [Latest] 2025
muhammadgurbazkhan
 
MiniTool Power Data Recovery Full Crack Latest 2025
muhammadgurbazkhan
 
MergeSortfbsjbjsfk sdfik k
RafishaikIT02044
 

Time to REST: testing web services

  • 2. Who am I Iurii Kutelmakh email: [email protected] skype: ykutelmakh linkedIn: linkedin.com/in/ykutelmakh Senior QA Engineer @ DataArt Director, lecturer @ Lviv IT School DJ @ Sunday Sofa Podcast
  • 3. AGENDA web services SOAP vs RESTful web services testing: from manual to automation
  • 6. Web services are open standard (XML, SOAP, HTTP etc.) based web applications that interact with other web applications for the purpose of exchanging data
  • 7. web services characteristics: - document based (xml / json) - cross platform - widely available (http / ftp) - synchronous / asynchronous
  • 10. Standart SOAP service components: •SOAP (Simple Object Access Protocol) •UDDI (Universal Description, Discovery and Integration) •WSDL (Web Services Description Language)
  • 13. soap request soap response HTTP/1.1 200 OK Cache-Control: no-cache, no-store, max-age=0, must-revalidate Date: Wed, 14 Jan 2015 15:33:32 GMT Pragma: no-cache Content-Length: 122 Content-Type: application/xml Accept: application/xml . . . <?xml version="1.0" encoding="utf-8" ?> <SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" ...> <SOAP-ENV:Body> <method:GetCustomerInfoResponse> <name>Test Name</name> <phone>+380000000000</phone> <street1>Hutorivka 35</street1> <street2></street2> <city>Lviv</city> <state></state> <postalcode>79000</postalcode> <country>Ukraine</country> <method:OutputParam>Value</method:OutputParam> </method:GetCustomerInfoResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> POST http://{url}?parameter=value HTTP/1.1 Host: HostServerName Content-type: text/xml; charset=utf-8 Content-length: 350 SoapAction: http://tempUri.org/GetCustomerInfo ... <?xml version="1.0" encoding="utf-8" ?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <soap:Body> <GetCustomerInfo xmlns="http://tempUri.org/"> <CustomerID>18102016</CustomerID> <OutputParam /> </GetCustomerInfo> </soap:Body> </soap:Envelope>
  • 15. REST (Representational State Transfer) permedia systems, describing the software engineering principles guiding REST and the interaction constrain while contrasting them to the constraints of other architectural styles.
  • 17. stateful means that there is memory of the past. Previous transactions are remembered and may affect the current transaction. stateless means there is no memory of the past. Every transaction is performed as if it were being done for the very first time.
  • 18. The Representational State Transfer (REST) style is an abstraction of the architectural elements within a distributed hypermedia system. The key abstraction of information in REST is a resource
  • 19. 1. Uniform Interface Individual resources are identified using URLs. 2. Stateless Interactions None of the clients context is to be stored on the server side between the request. 3. Cacheable Clients can cache the responses. 4. Client-Server The clients and the server are separated from each other. 5. Layered System At any time client cannot tell if it is connected to the end server or to an intermediate. 6. Code on Demand An optional constraint where the server temporarily extends the functionality of a client by the transfer of executable code.
  • 20. HATEOAS stands for Hypertext As The Engine Of Application State. It means that hypertext should be used to find your way through the API. GET /account/12345 HTTP/1.1 HTTP/1.1 200 OK <?xml version="1.0"?> <account> <account_number>12345</account_number> <balance currency="usd">100.00</balance> <link rel="deposit" href="/account/12345/deposit" /> <link rel="withdraw" href="/account/12345/withdraw" /> <link rel="transfer" href="/account/12345/transfer" /> <link rel="close" href="/account/12345/close" /> </account>
  • 22. good to know … In computer programming, an application programming interface (API) is a set of subroutine definitions, protocols, and tools for building software and applications In the simplest terms, APIs are sets of requirements that govern how one application can talk to another
  • 23. good to know … request methods: -GET -POST -PUT -DELETE -OPTIONS, TRACE, HEAD, PATCH headers: -Cookie -Location -Date -Content-Type -etc status codes: -100 (info) -200 (success) -300 (redirect) -400 (client error) -500 (server error)
  • 25. Request: - boundary values - equivalence partitioning Response: - data type - data structure - data fullness
  • 27. tools: - Postman - SoapUI - Automation framework (Java + TestNg + RestAssured)