Upload
sfa
View
1.126
Download
0
Embed Size (px)
DESCRIPTION
presented at Southern Fried Agile 2010. southernfriedagile.com
Citation preview
Agile Testing Strategies
By Jared Richardson
Winning Football
Team
Strategy
Successful Agile
• Team
• Strategy
Test Strategy
Prerequisites
• Continuous Integration
• Test Automation
Automated Tests Rust
Code Breaks
Sync Fails
Trust Fails
Two Scenarios
• Fix 1 to 3 tests
• Fix 800 tests
Your Code
Public API
SupportingClasses
Focused Tests
Broad Tests
Unit Tests• Exercise one unit
• No external resources
• Fast
• Focused
• Labor intensive
Mock Client Test
• A system or module
• Integration test
• Broad
• Slow
Tests Require
• Continuous Integration
• Frequent check-ins
Three Strategies
• Test Driven Development
• Defect Driven Testing
• Blitzkrieg
TDD
• Write a test that fails
• Write just enough code
• Repeat
TDD
• Drives design
• Creates a solid product
• Requires enlightenment
DDT
• Find a bug
• Add a test
• Jazz it up
DDT
• Inoculates your code
• Incrementally builds suite
• Retrofit
Blitzkrieg • Dash across the product
• Breadth, not depth
• Create templates
http://flickr.com/photos/lawrence_evil/145636309/
BK
• Jump start the effort
• Same page
• Requires enlightenment
Scenario One
• New project
• Enlightenment
TDD + BK + DDT
Scenario Two
• New project
• No enlightenment
DDT
Scenario Three
• Existing project
• Enlightenment
BK + DDT
Scenario Four
• Existing project
• No enlightenment
DDT
Scenario Five
• Existing product
• Some enlightened developers
DDT
Summary
• Test categories: Focused & Broad
• Test types: Unit & Mock Client
• Strategies: TDD, DDT, BK
Your Goal
• Pick a strategy
• Start within two days
• Use it one month
• Re-evaluate
Be the change you want
to see in the world.
-Gandhi
Be the change you want
to see in your shop.
-Jared