More Coverage, Better Diagnostics
Upcoming SlideShare
Loading in...5

Like this? Share it with your network


More Coverage, Better Diagnostics

Uploaded on

Ole Lensmar, co-creator of soapUI and Chief Architect at SmartBear Software, gave this presentation at STARWEST 2012. We are working, he says, in the "Golden Age of APIs."

Ole Lensmar, co-creator of soapUI and Chief Architect at SmartBear Software, gave this presentation at STARWEST 2012. We are working, he says, in the "Golden Age of APIs."

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads


Total Views
On Slideshare
From Embeds
Number of Embeds



Embeds 4 3 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide
  • No UI – you can’t see it!


  • 1. More Coverage, Better DiagnosticsIncluding API Testing Into the Continuous Integration and Deployment Process Ole Lensmar, SmartBear Software
  • 2. Why should you care about API Testing?
  • 3. Because today, APIs are at the core of everything!
  • 4. Mobile Mashups Devices Game Web Consoles Apps APIs Cloud Social MediaServices B2B Appliances Partners Other APIs
  • 5. APIs are at the core of business strategies – not just technology strategies
  • 6. APIs are showing extreme growth in all industries (from
  • 7. We are in the Golden Age of APIs!
  • 8. What do we actually mean by “API”?
  • 9. … WOA SOAP REST JSON WSDL XML JMS ThriftBuzzwords? Check! HTTP SOA OAuth Protocol Buffers WADL WS-* POX SPDY WebSockets …
  • 10. An API is data or a service that is available overthe network using a standard protocol and format for example… An HTTP search request returning results in JSON format A SOAP request for authorizing access to a secured system
  • 11. Common characteristics of APIs APIs are consumed by software, not end users APIs do not have a UI – there is nothing to “look” at or interact with APIs expose business logic or functionality, mostly for integration purposes APIs can be both private or public
  • 12. How do APIs fit into an architecture?Business A Business B Mobile / Web App Web App Desktop App REST SOAP Public REST Public API API REST JMS SOAP Thrift Service Service Service Service API 1 API 2 API 3 API
  • 13. Quality Aspects of an API Functionality – does it work as expected? Performance – does it perform as required? Security – is it secured for common attacks? Usability – is it usable? Compliance – does it follow common practices?
  • 14. How do you test an API? APIs generally implement a request-response model for exchanging messages or data Parameterized Request Test API ResponseA simple test sends a request message and validatesthat the response message has the expected content
  • 15. Single vs Multi-Request Tests Request API 1 Response Multi- Request Request API 2 Test Response Request API 1 Response
  • 16. the “short” demo
  • 17. How does API Testing relate to other types of testing? UI Tests Web / Mobile / Desktop(automated or manual) API Tests API Unit Unit Unit Unit Tests Unit Unit Unit
  • 18. Automated API Testing – what do we mean?
  • 19. “Running preconfigured API Testsautomatically using a test execution framework or scheduler” Functional – Performance - Security
  • 20. In Agile you have “Continuous Integration”API Tests should be run automatically andcontinuously for every build of the software
  • 21. In DevOps you have “Continuous Deployment” API Monitors run continuously toensure operations and production quality
  • 22. Opportunity : Reuse of API Test Assets Development : Continuous Integration / Deployment API Tests and Quality Assets Operations : API Monitoring
  • 23. Benefits of Test Asset Reuse Realistic monitoring Development Feed-forward – how it’s supposed to work Automated Tests / Assets Feedback – Comprehensive error information Operations
  • 24. Wrapping up -How should you treat your APIs?
  • 25. R-E-S-P-E-C-T your APIs! Design for usability Test Early Create Dedicated API Tests Automate your testsAssert performance and security
  • 26. Thanks!