Your SlideShare is downloading. ×
  • Like
Test Driven Development
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Test Driven Development

  • 574 views
Published

This was one of my first presentations that I gave in Columbus, Ohio at an event called "Day of .Net"

This was one of my first presentations that I gave in Columbus, Ohio at an event called "Day of .Net"

Published in Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
574
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
49
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Test Driven Development Ben Carey NuSoft Solutions
  • 2. The Presentation
    • What is TDD?
    • How do I do it?
    • Why do it?
    • Lessons learned
    • Resources
    • Q&A
    • What do you want to talk about?
      • (please interrupt)
  • 3. What is TDD?
    • Writing clean code that works
    • The use of testing for…
      • Automated Feedback
      • Incremental Design
    • It’s more than just unit testing
      • Developer Tests
      • Functional Tests
      • Performance Tests
      • Regression Tests
      • Design in the context of today’s problem
  • 4. What is TDD?
  • 5. How do I do it?
    • Think about what you want to do.
    • Think about how to test it.
    • Write a small test.
    • Watch it fail.
    • Write enough code to watch it pass.
    • Refactor
      • Once and only once
      • DRY
    • Repeat
  • 6. How do I do it?
    • Demo
  • 7. Why do it?
    • Feedback
      • Know what works
      • Know what doesn’t work
      • Change things (and know if it worked)
  • 8. Why do it?
    • Communication
      • Executable documentation
        • It’s always up to date
        • How many of your requirements / design documents can be proven?
        • Give new team members code instead of word documents
      • Demonstrate intent
      • Show usage
  • 9. Why do it?
  • 10. Why do it?
    • Simplicity
      • Organic Architecture
      • Empathetic code
      • We (by habit) over-engineer our code
      • Keep architecture / design in proportion to today's needs
      • Design based on feedback / experience
  • 11. Why do it?
    • Courage vs. Fear
      • What are the implications of this change?
      • Did I break anything?
      • Trust
  • 12. Lessons Learned
    • Readable trumps well-factored
    • Red / Green / Refactor = Flow
    • Defects – Prove it, then fix it (forever)
    • Adopt multiple levels of testing
    • The 10 minute rule
    • Use Mock objects
  • 13. Good Stuff
    • Test Driven Development: By Example
    • Test-Driven Development in Microsoft .Net
    • Pragmatic Unit Testing in C# with NUnit
    • www.testdriven.com
    • www.testingreflections.com
    • www.c2.com
  • 14. The End
    • Contact Info:
    • Ben Carey
    • [email_address]
    • NuSoft Solutions
    • 614-607-3754