uc san diego campus lisa 2014 - software development process
DESCRIPTION
An overview of how the UC San Diego Library development team has incorporated test driven development into its software development process. Discussion of the pros and cons of TDD, other options for adding testing into your development workflow.TRANSCRIPT
Software Development Process
Campus LISA
July 9, 2014Matt Critchlow
Manager of Development and Web Services
The Rock says:
UNLESS
• You plan to add new features
• You plan to refactor your code
• Your code will ever change
Why it really matters
• Common Language
• Best Practices
• Confidence
Confidence!
Source: http://flickfacts.com/movie/5736/stuart-saves-his-family
Testing Processes
• Test Driven Development
• Behavior Driven Development
• Feature Driven Development
• F@#$^! Driven Development
Test-driven Development (TDD)
Source: http://agileinaflash.blogspot.com/2009/02/red-green-refactor.html
What we do
• Test Driven Development (mostly)
• A dash of Behavior Driven Development
• Ruby: RSpec, Capybara, SimpleCov
• Java: JUnit
• Testing Culture with Open Source partners
What we’ve learned
• Writing tests takes some getting used to
• Test suites can get slow
• Red to Green feels good, and safe
• Dealing with: “I’m not paid to write tests”
• TDD != Holy Grail
• Self-Testing Code
Is TDD dead?
1. David Heinemeier Hansson declares TDD dead on blog and RailsConf 2014 keynote
2. Internet descends into chaos
3. Martin Fowler, Kent Beck, and DHH have Google Hangout discussions
Source: http://www.industriallogic.com/blog/tdd-dead-sale/
References
Testing Tools:• Rspec: http://rspec.info/• Capybara: http://jnicklas.github.io/capybara/• JUnit: http://junit.org/• Cucumer: http://cukes.info/ Reading:• Design Patterns: http://amzn.to/UPNN2F• Test Driven Development: http://amzn.to/1xN0r0z • RailsConf 2014 Keynote: http://bit.ly/1mCXOMm• Is TDD Dead?: http://martinfowler.com/articles/is-tdd-dead/ • Self-Testing Code: http://bit.ly/1jj8HT2
Contact: @mattcritchlow, [email protected]