Your SlideShare is downloading. ×
0
Pushing the Boundaries of Testing and  Continuous Integration Fabrizio Cannizzo  Raghav Ramesh Robbie Clutton
http://flickr.com/photos/zoonabar/159442457/ Who are we? http://flickr.com/photos/kerrybuckley/ 1356791754/in/pool-web21c
 
Agile to the Core! <ul><ul><li>XP/Scrum </li></ul></ul><ul><ul><ul><li>- TDD </li></ul></ul></ul><ul><ul><ul><li>- Pair pr...
Feature completeness  !=  completed product http://flickr.com/photos/mattimattila/2188826561/
What's Missing? <ul><li>Robustness </li></ul><ul><li>  </li></ul><ul><li>Performance </li></ul><ul><li>Scalability   </li>...
We needed to know the thing would stand up http://flickr.com/photos/alan-light/2435511982/
But we didn't want to wait for formal QA testing
We had to last three spooky nights http://flickr.com/photos/luchilu/677786684/
After four weekends, we were done http://flickr.com/photos/22243977@N06/2457787000/ Bugs Memory Leaks Poor Environment Log...
What next? <ul><li>Create scenarios </li></ul><ul><li>  </li></ul><ul><li>Define expectations </li></ul><ul><li>Automate  ...
So... how does it  really  work?
<ul><li>Technologies </li></ul><ul><ul><li>Cruise Control </li></ul></ul><ul><ul><li>Java Spring Framework </li></ul></ul>...
Cruise control is the engine that continuously runs typical usage scenarios. http://flickr.com/photos/_fxr/2142296214/ Ens...
Why are scenarios relevant? <ul><li>Robustness </li></ul><ul><li>Performance </li></ul><ul><li>Scalability </li></ul><ul><...
We  automated  phone behaviour using SIPp... Different  configurations  are implemented using different spring application...
 
 
 
 
TestRR <ul><ul><li>Generic Framework </li></ul></ul><ul><ul><ul><li>Robustness </li></ul></ul></ul><ul><ul><ul><li>Perform...
Who else is talking about this? <ul><li>James Bull  - Pragmatic Performance Testing -  http://is.gd/SUv </li></ul><ul><li>...
What we have learned that you could take away... <ul><li>Automate  early  and  often unit  and  acceptance  tests are an e...
... and also... <ul><li>This drives creation of  robust code  earlier Leverage existing  frameworks  for performance testi...
Q & A   Fabrizio Cannizzo:  -  http://smartrics.blogspot.com Raghav Ramesh:  -  http://ragstorooks.wordpress.com Robbie Cl...
Upcoming SlideShare
Loading in...5
×

Pushing The Boundaries Of Continuous Integration

3,896

Published on

Presentation from Agile2008.org of the session 'Pushing the Boundaries of Continuous Integration.

Published in: Technology, Sports
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,896
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
49
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Transcript of "Pushing The Boundaries Of Continuous Integration"

  1. 1. Pushing the Boundaries of Testing and Continuous Integration Fabrizio Cannizzo Raghav Ramesh Robbie Clutton
  2. 2. http://flickr.com/photos/zoonabar/159442457/ Who are we? http://flickr.com/photos/kerrybuckley/ 1356791754/in/pool-web21c
  3. 4. Agile to the Core! <ul><ul><li>XP/Scrum </li></ul></ul><ul><ul><ul><li>- TDD </li></ul></ul></ul><ul><ul><ul><li>- Pair programming </li></ul></ul></ul><ul><ul><ul><li>- Continuous Build/Integration </li></ul></ul></ul><ul><ul><ul><ul><li>Unit/Acceptance Test </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Reporting </li></ul></ul></ul></ul><ul><li>  </li></ul>
  4. 5. Feature completeness != completed product http://flickr.com/photos/mattimattila/2188826561/
  5. 6. What's Missing? <ul><li>Robustness </li></ul><ul><li>  </li></ul><ul><li>Performance </li></ul><ul><li>Scalability   </li></ul><ul><li>Failover </li></ul>
  6. 7. We needed to know the thing would stand up http://flickr.com/photos/alan-light/2435511982/
  7. 8. But we didn't want to wait for formal QA testing
  8. 9. We had to last three spooky nights http://flickr.com/photos/luchilu/677786684/
  9. 10. After four weekends, we were done http://flickr.com/photos/22243977@N06/2457787000/ Bugs Memory Leaks Poor Environment Log Extractors
  10. 11. What next? <ul><li>Create scenarios </li></ul><ul><li>  </li></ul><ul><li>Define expectations </li></ul><ul><li>Automate  </li></ul><ul><li>Continuously test </li></ul>
  11. 12. So... how does it really work?
  12. 13. <ul><li>Technologies </li></ul><ul><ul><li>Cruise Control </li></ul></ul><ul><ul><li>Java Spring Framework </li></ul></ul><ul><ul><li>Hand crafted Java code </li></ul></ul><ul><ul><li>JMX Console </li></ul></ul><ul><ul><li>UltraMonkey </li></ul></ul><ul><ul><li>SIPp </li></ul></ul><ul><ul><li>JainSIP </li></ul></ul><ul><ul><li>Mockphones </li></ul></ul>
  13. 14. Cruise control is the engine that continuously runs typical usage scenarios. http://flickr.com/photos/_fxr/2142296214/ Ensure the entire scenario played out as expected http://flickr.com/photos/mike-burns/35534789/ connect connect join
  14. 15. Why are scenarios relevant? <ul><li>Robustness </li></ul><ul><li>Performance </li></ul><ul><li>Scalability </li></ul><ul><li>Failover </li></ul>
  15. 16. We automated phone behaviour using SIPp... Different  configurations are implemented using different spring application contexts and network setups Scenario runners are java applications Scenarios are POJOs loaded from spring application context
  16. 21. TestRR <ul><ul><li>Generic Framework </li></ul></ul><ul><ul><ul><li>Robustness </li></ul></ul></ul><ul><ul><ul><li>Performance </li></ul></ul></ul><ul><li>  </li></ul><ul><ul><li>http://code.google.com/p/testrr/ </li></ul></ul>
  17. 22. Who else is talking about this? <ul><li>James Bull - Pragmatic Performance Testing - http://is.gd/SUv </li></ul><ul><li>  </li></ul><ul><li>Dr. Dobbs - Continuous Integration and Performance Testing - http://is.gd/12Ds </li></ul><ul><li>Manfred Lange - Introducing Automated Performance Testing - http://is.gd/SUj </li></ul><ul><li>Paul King & Dalton Cranston – Open Source Performance Testing Tools For The Web </li></ul>
  18. 23. What we have learned that you could take away... <ul><li>Automate early and often unit and acceptance tests are an essential first step maintaining these builds can have severe impact on velocity the customer must buy in: formulate user stories to drive the creation of tests </li></ul>
  19. 24. ... and also... <ul><li>This drives creation of robust code earlier Leverage existing frameworks for performance testing Build up testing strategies incrementally These tests are resource hungry, use an appropriate environment </li></ul>
  20. 25. Q & A   Fabrizio Cannizzo:  - http://smartrics.blogspot.com Raghav Ramesh: - http://ragstorooks.wordpress.com Robbie Clutton: - http://blog.iclutton.com Aloha SIP A/S: https://trac.osmosoft.com/Aloha Web21C SDK: http://web21c.bt.com
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×