Successfully reported this slideshow.
Your SlideShare is downloading. ×

Testing Microservices

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Upcoming SlideShare
Microservices Testing
Microservices Testing
Loading in …3
×

Check these out next

1 of 28 Ad

More Related Content

Slideshows for you (20)

Similar to Testing Microservices (20)

Advertisement

More from Anne-Marie Charrett (20)

Recently uploaded (20)

Advertisement

Testing Microservices

  1. 1. T E S T I N G M I C R O S E R V I C E S A N N E - M A R I E C H A R R E T T TA L K S A B O U T ….WHEN THE STAKES ARE HIGH
  2. 2. Anne-Marie Charrett Testing the testing industry for a long time. Right now, I’m an Head of Engineering (Testing) working at Tyro Payments. Tyro Payments has recently acquired a banking license allowing us to make loans and deposits, all been developed using a microservices architecture. Our team has been testing that...
  3. 3. Tyro Culture • New Product • Rapid Growth • Testing Culture among developers • Extreme Programming • Fortnightly releases • Moving to Continuous Delivery
  4. 4. Microservices architecture is a service- oriented architecture composed of loosely coupled elements that have bounded contexts. —- Adrian Cockcroft
  5. 5. MONOLITH Small change requires whole application rebuilding Keeping changes self contained is hard Scaling requires scaling of entire application http://martinfowler.com/articles/microservices.html
  6. 6. MICROSERVICES building applications as suites of services. services are independently deployable each service also provides a firm module boundary http://martinfowler.com/articles/microservices.html
  7. 7. Testing MICROSERVICES http://martinfowler.com/articles/microservice
  8. 8. Tyro-like Microservices architecture http://www.grahamlea.com/2015/03/microservices-tyro-evolution-presentation/
  9. 9. Challenges • Changes to Data Schema • Deployment problems (configuration/firewall) • Test Environment setup time • Automation Maintenance • Business (Lack of) Focus
  10. 10. Risk • Risk Changes Over Time • Risk changes depending on how much information you have • Risk changes depending on how much people understand what their creating? • Risk changes depending on the size of the system • Risk changes depending on who wants the information
  11. 11. (Un)Bounded Context • Learning has no boundaries • Risk has no boundaries • Bugs have no boundaries
  12. 12. Subjective Nature of Risk • High Risk compared to what? • Key Risks: Security, Performance, Reliability • Risk (for us) lay outside the bounded context • Risk through the size and complexity
  13. 13. Diversify your Test Strategy
  14. 14. Diversify Tester SkillSet Testers who support test environments Testers who focus on understanding the business and how they operate Testers who focus on working with developers
  15. 15. Diversify Test Data Different ways to load data (built in house tools) Different datasets to load up Diversity in test data (different states)
  16. 16. Diversify Test Environments • Diversity of Test Environments • Local Machines for Fast • Feedback Testing Environment in a Box • Performance Testing Environments • Work in Progress (Testing in Production)
  17. 17. Test Strategy • Functional • Backwards Compatibility • Security • Deployment • Performance • Robustness/Maintenance
  18. 18. Lessons Learned • Checking is essential… Testing is vital • Diversify your strategy , Diversify your testing skill set, Diversify your test data • Use Risk to help you decide what to test • Treat e2e automation with kit gloves • Mimic Production where useful
  19. 19. Further Reading • http://martinfowler.com/articles/microservices.html • http://martinfowler.com/articles/microservice- testing/ • http://www.grahamlea.com/2015/03/ microservices-tyro-evolution-presentation/ • https://www.nginx.com/blog/microservices-at- netflix-architectural-best-practices/
  20. 20. Questions? @charrett http://dojo.ministryoftesting.com/

×