mozilla: continuous deploment on sumo
DESCRIPTION
An overview of how Mozilla is doing Continuous Deployment for support.mozilla.orgTRANSCRIPT
![Page 1: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/1.jpg)
MOZILLA Continuous Deployment on Sumo
Matt Brandt, QA Engineer
support.mozilla.com
Tuesday, November 22, 2011
![Page 2: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/2.jpg)
MOZILLA Continuous Deployment on Sumo
[Nearly]
Matt Brandt, QA Engineer
support.mozilla.com
Tuesday, November 22, 2011
![Page 3: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/3.jpg)
Bring questions
Tuesday, November 22, 2011
![Page 4: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/4.jpg)
Bring questions
Tuesday, November 22, 2011
![Page 5: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/5.jpg)
Bring questions
What’s wrong with our current small iterations?
Tuesday, November 22, 2011
![Page 6: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/6.jpg)
Bring questions
What’s wrong with our current small iterations?
Trust developers to test the app??!!
Tuesday, November 22, 2011
![Page 7: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/7.jpg)
Bring questions
What’s wrong with our current small iterations?
Trust developers to test the app??!!
What happens to our Selenium test suite?
Tuesday, November 22, 2011
![Page 8: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/8.jpg)
Bring questions
What’s wrong with our current small iterations?
Trust developers to test the app??!!
What happens to our Selenium test suite?
We’ll be relegated to manual testers?
Tuesday, November 22, 2011
![Page 9: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/9.jpg)
Bring questions
What’s wrong with our current small iterations?
Trust developers to test the app??!!
What happens to our Selenium test suite?
We’ll be relegated to manual testers?
How do we measure quality?
Tuesday, November 22, 2011
![Page 10: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/10.jpg)
But first a little history...
Tuesday, November 22, 2011
![Page 11: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/11.jpg)
But first a little history...
Tuesday, November 22, 2011
![Page 12: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/12.jpg)
Short Iterations
Tuesday, November 22, 2011
![Page 13: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/13.jpg)
SimplifiedWhat the team did before
Trunk/Dev
Stage Prod
Tuesday, November 22, 2011
![Page 14: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/14.jpg)
SimplifiedWhat the team did before
Trunk/Dev
Stage Prod
•Verify new features
•Is this the right thing?
•Automate
Tuesday, November 22, 2011
![Page 15: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/15.jpg)
SimplifiedWhat the team did before
Trunk/Dev
Stage Prod
•Verify new features
•Is this the right thing?
•Automate
Tuesday, November 22, 2011
![Page 16: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/16.jpg)
SimplifiedWhat the team did before
Trunk/Dev
Stage Prod
•Verify new features
•Is this the right thing?
•Automate
•IT pushes
•Regression test
•Exploratory Testing
•Is this the right thing?
Tuesday, November 22, 2011
![Page 17: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/17.jpg)
SimplifiedWhat the team did before
Trunk/Dev
Stage Prod
•Verify new features
•Is this the right thing?
•Automate
•IT pushes
•Regression test
•Exploratory Testing
•Is this the right thing?
Tuesday, November 22, 2011
![Page 18: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/18.jpg)
SimplifiedWhat the team did before
Trunk/Dev
Stage Prod
•Verify new features
•Is this the right thing?
•Automate
•IT pushes
•Regression test
•Exploratory Testing
•Is this the right thing?
•IT pushes
•Verify
•Wahoo!
Tuesday, November 22, 2011
![Page 19: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/19.jpg)
The brave new worldContinuous deployment
http://cliptank.com/funny/dog-costumes.php
Tuesday, November 22, 2011
![Page 20: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/20.jpg)
Tools & attitude
Tuesday, November 22, 2011
![Page 21: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/21.jpg)
Discuss what is acceptable risk
https://wiki.mozilla.org/QA/Execution/Web_Testing/Continuous_Deployment#Risks_.26_Plans_.26_Tools
Tuesday, November 22, 2011
![Page 22: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/22.jpg)
Discuss what is acceptable risk
Risk: Less critical areas will not be covered by automation
https://wiki.mozilla.org/QA/Execution/Web_Testing/Continuous_Deployment#Risks_.26_Plans_.26_Tools
Tuesday, November 22, 2011
![Page 23: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/23.jpg)
Discuss what is acceptable risk
Risk: Less critical areas will not be covered by automation
•If the feature breaks, it is acceptable to wait up to an hour for a fix.
https://wiki.mozilla.org/QA/Execution/Web_Testing/Continuous_Deployment#Risks_.26_Plans_.26_Tools
Tuesday, November 22, 2011
![Page 24: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/24.jpg)
Discuss what is acceptable risk
Risk: Less critical areas will not be covered by automation
•If the feature breaks, it is acceptable to wait up to an hour for a fix.
•Example: the ability to answer a question.
https://wiki.mozilla.org/QA/Execution/Web_Testing/Continuous_Deployment#Risks_.26_Plans_.26_Tools
Tuesday, November 22, 2011
![Page 25: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/25.jpg)
Acceptable risk
Tuesday, November 22, 2011
![Page 26: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/26.jpg)
Acceptable risk
Tuesday, November 22, 2011
![Page 27: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/27.jpg)
What’s our manual strategy?
Tuesday, November 22, 2011
![Page 28: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/28.jpg)
What’s our manual strategy?
Tuesday, November 22, 2011
![Page 29: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/29.jpg)
Manual strategy
Tuesday, November 22, 2011
![Page 30: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/30.jpg)
Manual strategy
Feature verification & exploratory testing
Tuesday, November 22, 2011
![Page 31: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/31.jpg)
Manual strategy
Feature verification & exploratory testing
Testing can occur in production
Tuesday, November 22, 2011
![Page 32: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/32.jpg)
Manual strategy
Feature verification & exploratory testing
Testing can occur in production
Community involvement on new features
Tuesday, November 22, 2011
![Page 33: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/33.jpg)
Automation is fun
https://github.com/mozilla/sumo-tests
Tuesday, November 22, 2011
![Page 34: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/34.jpg)
Automation is fun
https://github.com/mozilla/sumo-tests
Tuesday, November 22, 2011
![Page 35: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/35.jpg)
Automation strategy
Tuesday, November 22, 2011
![Page 36: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/36.jpg)
Automation strategy
Selenium tests for areas that are clumsy to cover with unit tests or QUnit
Tuesday, November 22, 2011
![Page 37: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/37.jpg)
Automation strategy
Selenium tests for areas that are clumsy to cover with unit tests or QUnit
Qualify as deployment blockers: run in dev & staging envs
Tuesday, November 22, 2011
![Page 38: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/38.jpg)
Automation strategy
Selenium tests for areas that are clumsy to cover with unit tests or QUnit
Qualify as deployment blockers: run in dev & staging envs
Non-volatile production tests verify env & services work
Tuesday, November 22, 2011
![Page 39: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/39.jpg)
Automation strategy
Selenium tests for areas that are clumsy to cover with unit tests or QUnit
Qualify as deployment blockers: run in dev & staging envs
Non-volatile production tests verify env & services work
[All] Tests will be deleted if they don’t cover critical areas
Tuesday, November 22, 2011
![Page 40: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/40.jpg)
WafflingFailure is always an option
Tuesday, November 22, 2011
![Page 41: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/41.jpg)
WafflingFailure is always an option
Tuesday, November 22, 2011
![Page 42: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/42.jpg)
Control
Tuesday, November 22, 2011
![Page 43: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/43.jpg)
Gathering data
Tuesday, November 22, 2011
![Page 44: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/44.jpg)
Gathering data
Tuesday, November 22, 2011
![Page 45: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/45.jpg)
Now
Trunk/Dev
Stage Prod
•Automation runs
•Fast iterations
•Early stage testing
Tuesday, November 22, 2011
![Page 46: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/46.jpg)
Now
Trunk/Dev
Stage Prod
•Automation runs
•Fast iterations
•Early stage testing
•Auto-updated
•No post-commit hooks
•Bug & feature testing
Tuesday, November 22, 2011
![Page 47: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/47.jpg)
Now
Trunk/Dev
Stage Prod
•Automation runs
•Fast iterations
•Early stage testing
•Auto-updated
•No post-commit hooks
•Bug & feature testing
•Not push-button
•Automation
•Monitoring
•Feedback tool
•Wahoo!
Tuesday, November 22, 2011
![Page 48: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/48.jpg)
Questions
Tuesday, November 22, 2011
![Page 49: Mozilla: Continuous Deploment on SUMO](https://reader034.vdocuments.mx/reader034/viewer/2022051413/553a882b55034657228b458c/html5/thumbnails/49.jpg)
•https://support.mozilla.com•https://wiki.mozilla.org/QA/Execution/Web_Testing/Continuous_Deployment•https://github.com/mozilla/sumo-tests•http://coffeeonthekeyboard.com/the-future-of-sumo-development-511/•http://coffeeonthekeyboard.com/acronyms-you-should-know-mttd-and-mttr-597/•http://www.slideshare.net/stephendonner/continuous-deployment-9363895
•http://docs.jquery.com/QUnit•https://github.com/jsocol/django-waffle•http://coffeeonthekeyboard.com/introducing-waffle-for-django-541/•https://github.com/etsy/statsd•http://codeascraft.etsy.com/2011/02/15/measure-anything-measure-everything/
References
Tuesday, November 22, 2011