Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Maio 2016 - It's Not Just About Tests

66 views

Published on

Palestra apresentada no encontro de maio pelo Raphael Amorim - https://speakerdeck.com/raphamorim

Published in: Software
  • Be the first to comment

  • Be the first to like this

Maio 2016 - It's Not Just About Tests

  1. 1. IT'S NOT JUST ABOUT TESTS RAPHAEL AMORIM
  2. 2. WHAT’S SOFTWARE TEST? FIRST THINGS FIRST
  3. 3. 1. SOFTWARE TESTING IS A PROCESS OF EXECUTING A PROGRAM OR APPLICATION WITH THE INTENT OF FINDING THE SOFTWARE BUGS.
  4. 4. 2. PROCESS OF VALIDATING AND VERIFYING THAT A SOFTWARE PROGRAM OR APPLICATION OR PRODUCT.
  5. 5. 3. IN SHORT: THERE ARE SEVERAL TYPES/ METHODOLOGIES OF SOFTWARE TESTING.
  6. 6. 3. IN SHORT: THERE ARE SEVERAL TYPES/ METHODOLOGIES OF SOFTWARE TESTING. E.G: UNIT TESTS, INTEGRATION TESTS, OPERATIONAL ACCEPTANCE TESTS…
  7. 7. BUT WHY TEST MY SOFTWARE ?
  8. 8. IT'S NOT JUST ABOUT TESTS WHY SOFTWARE TESTS? ▸ To ensure that what we create does what it’s supposed to do.
  9. 9. IT'S NOT JUST ABOUT TESTS WHY SOFTWARE TESTS? ▸ To ensure that what we create does what it’s supposed to do. ▸ “Something that works when one person is using it may not work when hundreds of people are using it”.
  10. 10. IT'S NOT JUST ABOUT TESTS WHY SOFTWARE TESTS? ▸ To ensure that what we create does what it’s supposed to do. ▸ “Something that works when one person is using it may not work when hundreds of people are using it”. ▸ We owe it to our users and ourselves to deliver the best application we can.
  11. 11. IT'S NOT JUST ABOUT TESTS WHY SOFTWARE TESTS? ▸ To ensure that what we create does what it’s supposed to do. ▸ “Something that works when one person is using it may not work when hundreds of people are using it”. ▸ We owe it to our users and ourselves to deliver the best application we can. ▸ Tests means Quality.
  12. 12. WE'LL NOT TALK ABOUT TESTS. WE'LL TALK ABOUT DEVELOPMENT PROCESS.
  13. 13. TEST DRIVEN DEVELOPMENT SOFTWARE DEVELOPMENT PROCESS
  14. 14. HOWEVER, TDD IS NOT THE "ONLY ONE" ( BDD, CDD, DDD, MDD, FDD, ATDD, AND THE OTHER DOUBLE D’S )
  15. 15. IT’S NOT JUST ABOUT TESTS TDD CYCLE
  16. 16. “ FOLK WISDOM IN SOFTWARE DEVELOPMENT TEACHES THAT INTERFACES SHOULDN'T BE UNDULY INFLUENCED BY IMPLEMENTATIONS. WRITING A TEST FIRST IS A CONCRETE WAY TO ACHIEVE THIS SEPARATION. ” Kent Beck, Extreme Programming Explained: Embrace Change IT'S NOT JUST ABOUT TESTS
  17. 17. “ IF IT'S HARD TO BE TESTED, SORRY YOUR CODE DESIGN IS WRONG. ” Raphael Amorim, Random Tweet IT'S NOT JUST ABOUT TESTS
  18. 18. TEST DRIVEN DEVELOPMENT “ The Bad Parts ”
  19. 19. EXTRA DEVELOPMENT REQUIRED
  20. 20. MISUSE OF MOCK OBJECTS
  21. 21. MISUSE OF MOCK OBJECTS http://martinfowler.com/articles/mocksArentStubs.html Mocks Aren’t Stubs http://blog.testdouble.com/posts/2014-01-25-the-failures-of-intro-to-tdd.html The Failures of "Intro to TDD"
  22. 22. TEST DRIVEN DEVELOPMENT “ The Good Parts ”
  23. 23. NO MORE BUGS INTO PRODUCTION
  24. 24. ALMOST NO BUGS INTO PRODUCTION Back to Reality:
  25. 25. TEST DRIVEN DEVELOPMENT “ The AWESOME Parts ”
  26. 26. GREAT API DESIGN
  27. 27. ++DOCUMENTATION
  28. 28. HIGH SPEED DEBUGGING
  29. 29. ENCOURAGES SOLID DESIGN
  30. 30. TDD IS NOT FOR EVERYONE
  31. 31. TDD IS NOT FOR EVERYONE http://claysnow.co.uk/to-tdd-or-not-to-tdd/ To TDD or not to TDD? That is not the question
  32. 32. “ TDD IS NOT EASY, IT TAKES TIME TO LEARN AND GET RIGHT AND THERE IS A RISK THAT IT COULD BE A TIME SINK FOR A PROJECT IF THE ENTIRE DEVELOPMENT TEAM DOES NOT BUY INTO ITS USAGE. ” Bradley Braithwaite, TDD: It's not just about the Tests IT'S NOT JUST ABOUT TESTS
  33. 33. WHERE TO START
  34. 34. IT'S NOT JUST ABOUT TESTS ▸ The ThreeRules Of Tdd 
 ( http://butunclebob.com/ArticleS.UncleBob.TheThreeRulesOfTdd ) ▸ Test Driven Development: By Example
 ( http://www.amazon.com/Test-Driven-Development-By-Example/dp/ 0321146530 ) ▸ Growing Object-Oriented Software, Guided by Tests
 ( http://www.amazon.com/Growing-Object-Oriented-Software-Guided-Tests/dp/ 0321503627 ) ▸ Test-Driven Development: A Practical Guide: A Practical Guide
 ( http://www.amazon.com/Test-Driven-Development-Practical-Guide/dp/ 0131016490 )
  35. 35. IT'S NOT JUST ABOUT TESTS ▸ TDD no Mundo Real (PT-BR)
 ( http://tddnomundoreal.com.br/ )
  36. 36. “ THANK YOU! ” - @RAPHAMUNDI
  37. 37. IT'S NOT JUST ABOUT TESTS REFERENCES ▸ Extreme Programming Explained: Embrace Change, 2000 - Kent Beck. ▸ TDD: It's not just about the Tests, 2012 - Bradley Braithwaite ▸ 5 Reasons We Need Software Testing, 2014 - Cullyn Thomson

×