testing web services
DESCRIPTION
Slides from a talk I gave on Testing Web Services at QSI Tech Lunch on September 19, and will be repeating at the 2013 Columbus Code Camp.TRANSCRIPT
Business Value…Achieved
Tes$ng Web Services Steinn ‘Stan’ Jónsson QSI Tech Lunch September 19, 2013
Business Value…Achieved
whoami
• Senior Consultant at Quick Solu$ons
Business Value…Achieved
whoami -‐ cont.
• Agility
Business Value…Achieved
Agenda
Business Value…Achieved
Agenda -‐ cont.
• Will also briefly show two Chrome plugins
Advanced REST client
ModHeader
Business Value…Achieved
SoapUI
• Open source cross-‐plaSorm func$onal tes$ng solu$on – SOAP – REST – JDBC – JMS – HTML
Business Value…Achieved
What do I use SoapUI for?
Probing Mocking (not like that)
Business Value…Achieved
Demo Time
(Screenshots of some of what I walked through)
Business Value…Achieved
What do I probe for?
• Can I get to the web service? – No access issues or proprietory security protocol
• Does the input/output XML/JSON look ok?
• Does the service return valid respones? • Does the service handle errors in a meaningful way?
Business Value…Achieved
JMeter
• Open source applica$on designed to load test func$onal behavior and measure performance – Web -‐ HTTP, HTTPS – SOAP – JDBC – LDAP – JMS – Mail -‐ SMTP(S), POP3(S) and IMAP(S) – Na$ve commands or shell scripts
Business Value…Achieved
What do I use JMeter for?
Smoke tes$ng Load tes$ng Performance tes$ng
Business Value…Achieved
Demo Time
(Screenshots of some of what I walked through)
Business Value…Achieved
JMeter -‐ Tips
• When running load tests: – Make sure to allocate sufficient memory to JMeter
– Log/display only errors • Trust, but verify – Have seen JMeter report faster response $mes than measured in web service
Business Value…Achieved
REST-assured
• Java DSL for easy tes$ng of REST services – POST, GET, PUT, DELETE, HEAD – Easy to validate and verify response
Business Value…Achieved
What do I use REST-assured for?
Web Service Acceptance Tes$ng Run frequently as part of CI
Business Value…Achieved
Demo Time
(Screenshots of some of what I walked through)
Business Value…Achieved
Test Automa$on
• Good – Tests read in test data from external configura$on
• Beder – Tests search for test data in db before run
• Best – Tests populate db before run & clean up aferwards
Business Value…Achieved
Summary
• Looked at 3 free tools for Web Service tes$ng • Showed how they can cover most of your Web Service tes$ng needs
Business Value…Achieved
Ques$ons?
@sjonsson www.sjonsson.com sjonsson@quicksolu$ons.com
Web Service Related Blog Posts: www.sjonsson.com/search/label/web services