wso2con eu 2015: api readiness: is your api ready for primetime?

Post on 25-Jul-2015

109 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

API  Readiness:  Visualizing  and  

Virtualizing  

Lorinda  Brandon  Director,  API  Partner  Development  

SmartBear  So>ware  @lindybrandon  

 

Keys  to  a  successful  API  

•  documentaEon  •   tesEng  •   mocking  •   evangelism  •   management  •   monitoring  

But  how  do  you  get  there?  

API  Readiness  

visualize  

Service  Defini+ons  The  best  way  to  visualize  your  API  

Describing  is  not  really  visualizing  

“The  best  design  gets  out  of  the  way  between  the  viewer’s  brain  and  the  content.”    

–  Edward  Tu>e  

– Swagger.ed  (credit  -­‐  @chefarchitect)  

New  Ideas  Coloring  outside  the  lines  

 

Visualizing:    New  ideas  

– Ardoq  

New  Ideas  Coloring  outside  the  lines  

 

Visualizing:    New  ideas  

– LucyBot  

New  Ideas  Coloring  outside  the  lines  

 

API  Readiness  

visualize  

validate  

Func+onal  Test  Live  up  to  your  own  hype  

Load  Test  Don’t  let  success  kill  you  

Security  Test  Know  where  the  dangers  are  

API  Readiness  

visualize  

validate  

virtualize  

Why  virtualize  your  APIs?  

Bootstrap Parallel  dev  and  test  

Test Design

Virtual API Generate from spec

or with tools

Client Development

Integration Development

Isolate Test  execuEon  and  development  

Test Execution (automated or manual)

Development

Component in dev or test

3rd party APIs (virtualized)

Other APIs (virtualized)

Legacy Systems

(virtualized)

•  Simulate (un)expected behavior •  Minimize impact on and usage of external systems •  Assert usage of external components

Performance Test

Solution under test

Load Test Execution (automated or manual) 3rd party APIs

(virtualized)

Other APIs (virtualized)

Legacy Systems

(virtualized)

•  Simulate (un)expected performance in external systems

•  Minimize impact on and usage of external systems

•  Triage Performance bottlenecks

Provide Sandbox

Hardware / Software Solution

API Virtual API

Evaluate

Integrate

Integration Test

Three  Levels  of  API  Virtualiza+on  

StaEc  Mocks  

Static responses •  Semantically

correct •  No logic •  Payloads

generated from schemas or examples

Code or generated from metadata  

Dynamic  Mocks  

Dynamic responses •  Based on input •  Re-use input in

output •  Scripting •  Data-driven /

Data-generation •  Simulate state Assertions on incoming content  

Virtual  APIs  

Runtime behavior simulation Runtime management •  Redirect traffic to

Virtual APIs dynamically •  Access control •  Deployment •  Test execution

integration      

API  Readiness  

visualize  

validate  

virtualize  

monitor  

MONITORING  Virtual  APIs  

Mock  Services  

ProducEon  APIs  

Keep  producEon  stable    Prevent  boTlenecks  

Test  

Dev  Test  Dev  

Test  

Ongoing  development  

API  Monitoring  

visualize  validate  virtualize  monitor  

Thank  You  

top related