Who let the robot out?
Building high quality software
with Continuous Integration
Timo Stollenwerk
Wishful Thinking
In Time
In Budget
Bug Free
Readable Code
Maintainable Code
Documented
Fast
Working
Real Life
Broken build
It works on my machine
Not deployable
Bad performance
Unmaintainable code
Over time
Over budget
Assumption is the mother of all screw-ups
Software Quality?!
Basic Ideas
Do not break things
If things are broken, don't make it more complicated
If you broke the build, fix it as soon as possible
Getting Started
Post-commit hook
Failure / Fix
Tests
collective.xmltestreport / Jenkins Cobertura Plugin
Acceptance Tests
Robot
Framework
Jenkins Robot Plugin / Saucelabs
Code Analysis
buildout.jenkins / plone.recipe.codeanalysis / Jenkins Violations Plugin
Performance Tests
Jenkins jMeter Plugin
Documentation
Sphinx / Robot / Build Step
Notifications
Jenkins Ext-Email Plugin / Jenkins Dashboard Plugin
Continuous Deyploment
Jenkins Build Pipeline Plugin
What do we get?
In Time
In Budget
Bug Free
Readable Code
Maintainable Code
Documented
Fast
Working
Who let the robot out?
Timo Stollenwerk
IRC: tisto
tisto@plone.org
Building high quality software
with Continuous Integrat...
●
Robot: http://www.flickr.com/photos/jerry_reynolds/2538180907
●
Dark Sky: http://www.flickr.com/photos/psychoscheiko/581...
Upcoming SlideShare
Loading in …5
×

Who let the robot out? - Building high quality software with Continuous Integration

1,018 views

Published on

Continuous Integration is a software development practice where members of a team integrate their work frequently into a code repository. Each integration is verified by an automated build process that includes different kinds of tests and code quality measurements to detect errors and code quality violations as quickly as possible.

This talk will introduce the principles of Continous Integration and show how to set up a Python/Plone project with a CI-Server as a central component of the development process.

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

No Downloads
Views
Total views
1,018
On SlideShare
0
From Embeds
0
Number of Embeds
27
Actions
Shares
0
Downloads
11
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Who let the robot out? - Building high quality software with Continuous Integration

  1. 1. Who let the robot out? Building high quality software with Continuous Integration Timo Stollenwerk
  2. 2. Wishful Thinking In Time In Budget Bug Free Readable Code Maintainable Code Documented Fast Working
  3. 3. Real Life Broken build It works on my machine Not deployable Bad performance Unmaintainable code Over time Over budget
  4. 4. Assumption is the mother of all screw-ups
  5. 5. Software Quality?!
  6. 6. Basic Ideas
  7. 7. Do not break things
  8. 8. If things are broken, don't make it more complicated
  9. 9. If you broke the build, fix it as soon as possible
  10. 10. Getting Started Post-commit hook Failure / Fix
  11. 11. Tests collective.xmltestreport / Jenkins Cobertura Plugin
  12. 12. Acceptance Tests Robot Framework Jenkins Robot Plugin / Saucelabs
  13. 13. Code Analysis buildout.jenkins / plone.recipe.codeanalysis / Jenkins Violations Plugin
  14. 14. Performance Tests Jenkins jMeter Plugin
  15. 15. Documentation Sphinx / Robot / Build Step
  16. 16. Notifications Jenkins Ext-Email Plugin / Jenkins Dashboard Plugin
  17. 17. Continuous Deyploment Jenkins Build Pipeline Plugin
  18. 18. What do we get? In Time In Budget Bug Free Readable Code Maintainable Code Documented Fast Working
  19. 19. Who let the robot out? Timo Stollenwerk IRC: tisto tisto@plone.org Building high quality software with Continuous Integration
  20. 20. ● Robot: http://www.flickr.com/photos/jerry_reynolds/2538180907 ● Dark Sky: http://www.flickr.com/photos/psychoscheiko/5812349452 ● Lego: http://www.flickr.com/photos/ogimogi/2253657555 ● Broken Glass: http://www.flickr.com/photos/akeg/2230862848 Image Credits

×