0
Test Driven Development     Why Should You Care about TDD      And Automated (Unit) Testing?                Naresh Jain   ...
Test Driven DevelopmentTDD Rhythm - Test, Code, Refactor                                    2
Test Driven Development                                    Add a TestTDD Rhythm - Test, Code, Refactor                    ...
Test Driven Development                                    Add a Test                                    Run the TestTDD R...
Test Driven Development                                           Add a Test                                    Pass      ...
Test Driven Development                                           Add a Test                                    Pass      ...
Test Driven Development                                            Add a Test                                    Pass     ...
Test Driven Development                                            Add a Test                                    Pass     ...
Test Driven Development                                            Add a Test                                    Pass     ...
Test Driven Development                                            Add a Test                                    Pass     ...
Test Driven Development                                            Add a Test                                    Pass     ...
Test Driven Development                                            Add a Test                                    Pass     ...
Test Driven Development                                            Add a Test                                    Pass     ...
Test Driven Development                                            Add a Test                                    Pass     ...
Why Learn TDD?                 3
Manual (monkey) Checking by   Developers and Tester                              4
Stay away from (time hungry)          debugger                               5
Maintain Focus                 6
Confidence            7
Reduce Wastage: Hand Overs                         8
Helps youSlow down and Think             9
Communication                10
11
Ultimate Goals                 12
Ultimate Goals• Bring JOY back to programming                                  12
Ultimate Goals• Bring JOY back to programming• Understand Code Easily                                  12
Ultimate Goals• Bring JOY back to programming• Understand Code Easily• Produce Simple, Testable, Loosely-Coupled Design   ...
Ultimate Goals• Bring JOY back to programming• Understand Code Easily• Produce Simple, Testable, Loosely-Coupled Design• B...
Ultimate Goals• Bring JOY back to programming• Understand Code Easily• Produce Simple, Testable, Loosely-Coupled Design• B...
Living, up-to-date   specification                     13
Learning:Listen to your code                      14
Testable Code by Design            +       Safety Net                          15
Communicate Design   Decisions                     16
Loosely-Coupled Design                         17
Refactoring              18
Ultimate Goals• Bring JOY back to programming• Understand Code Easily• Produce Simple, Testable, Loosely-Coupled Design• B...
Thank You!      Naresh Jain naresh@agilefaqs.comLicensed Under Creative Commons by Naresh Jain                            ...
Upcoming SlideShare
Loading in...5
×

Why Test Driven Development?

4,355

Published on

Why should developers learn and care of TDD as an important skill?

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

No Downloads
Views
Total Views
4,355
On Slideshare
0
From Embeds
0
Number of Embeds
10
Actions
Shares
0
Downloads
84
Comments
0
Likes
6
Embeds 0
No embeds

No notes for slide

Transcript of "Why Test Driven Development?"

  1. 1. Test Driven Development Why Should You Care about TDD And Automated (Unit) Testing? Naresh Jain Twitter: @nashjain Blog: http://blogs.agilefaqs.com Licensed Under Creative Commons by Naresh Jain 1
  2. 2. Test Driven DevelopmentTDD Rhythm - Test, Code, Refactor 2
  3. 3. Test Driven Development Add a TestTDD Rhythm - Test, Code, Refactor 2
  4. 4. Test Driven Development Add a Test Run the TestTDD Rhythm - Test, Code, Refactor 2
  5. 5. Test Driven Development Add a Test Pass Run the TestTDD Rhythm - Test, Code, Refactor 2
  6. 6. Test Driven Development Add a Test Pass Run the Test FailTDD Rhythm - Test, Code, Refactor 2
  7. 7. Test Driven Development Add a Test Pass Run the Test FailTDD Rhythm - Test, Code, Refactor Make a little change 2
  8. 8. Test Driven Development Add a Test Pass Run the Test FailTDD Rhythm - Test, Code, Refactor Make a little change Run the Test 2
  9. 9. Test Driven Development Add a Test Pass Run the Test FailTDD Rhythm - Test, Code, Refactor Make a little change Fail Run the Test 2
  10. 10. Test Driven Development Add a Test Pass Run the Test FailTDD Rhythm - Test, Code, Refactor Make a little change Fail Run the Test Pass 2
  11. 11. Test Driven Development Add a Test Pass Run the Test FailTDD Rhythm - Test, Code, Refactor Make a little change Fail Run the Test Pass Refactor 2
  12. 12. Test Driven Development Add a Test Pass Run the Test FailTDD Rhythm - Test, Code, Refactor Make a little change Fail Run the Test Pass Refactor 2
  13. 13. Test Driven Development Add a Test Pass Run the Test FailTDD Rhythm - Test, Code, Refactor Make a little change Fail Run the Test Pass Refactor 2
  14. 14. Test Driven Development Add a Test Pass Run the Test FailTDD Rhythm - Test, Code, Refactor Make a little change Fail Run the Test Pass Refactor 2
  15. 15. Why Learn TDD? 3
  16. 16. Manual (monkey) Checking by Developers and Tester 4
  17. 17. Stay away from (time hungry) debugger 5
  18. 18. Maintain Focus 6
  19. 19. Confidence 7
  20. 20. Reduce Wastage: Hand Overs 8
  21. 21. Helps youSlow down and Think 9
  22. 22. Communication 10
  23. 23. 11
  24. 24. Ultimate Goals 12
  25. 25. Ultimate Goals• Bring JOY back to programming 12
  26. 26. Ultimate Goals• Bring JOY back to programming• Understand Code Easily 12
  27. 27. Ultimate Goals• Bring JOY back to programming• Understand Code Easily• Produce Simple, Testable, Loosely-Coupled Design 12
  28. 28. Ultimate Goals• Bring JOY back to programming• Understand Code Easily• Produce Simple, Testable, Loosely-Coupled Design• Build Quality In 12
  29. 29. Ultimate Goals• Bring JOY back to programming• Understand Code Easily• Produce Simple, Testable, Loosely-Coupled Design• Build Quality In• Reduce Maintenance Significantly 12
  30. 30. Living, up-to-date specification 13
  31. 31. Learning:Listen to your code 14
  32. 32. Testable Code by Design + Safety Net 15
  33. 33. Communicate Design Decisions 16
  34. 34. Loosely-Coupled Design 17
  35. 35. Refactoring 18
  36. 36. Ultimate Goals• Bring JOY back to programming• Understand Code Easily• Produce Simple, Testable, Loosely-Coupled Design• Build Quality In• Reduce Maintenance Significantly 19
  37. 37. Thank You! Naresh Jain naresh@agilefaqs.comLicensed Under Creative Commons by Naresh Jain 20
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×