Being a professional software tester

3,740 views

Published on

Keynote from Nordic Testing Days 2013, Tallinn

Published in: Technology

Being a professional software tester

  1. 1. Anton Keks@antonkeksBeing a professionalsoftware tester(in XXI century)Nordic Testing Days, 7.06.2013
  2. 2. Anton KeksAnton KeksCo-founder ofCo-founder ofLecturer atLecturer at Tallinn Technical UniversityTallinn Technical UniversityAgile EstoniaAgile Estonia board memberboard member●Author ofAuthor of Angry IP ScannerAngry IP ScannerStrong believer inStrong believer inAgileAgile andand Open-sourceOpen-source
  3. 3. Professionalism in medicine● Surgeon 1 does the same operation over andover and makes a lot of money● Surgeon 2 knows all the standard operationsand has developed an innovative procedure,but makes less money than Surgeon 1●Surgeon 3 practices own procedure regularly,but also travels abroad to teach other doctorshow to practice the innovationCredit http://tinyplanet.ca/projects/professionalism.html
  4. 4. 1. There are 2 kinds of tests...Regression testsandEverything else
  5. 5. ●Unit tests●Integration tests● Automated UI tests●Acceptance tests● Usability (corridor) tests● Performance tests●Penetration (security) tests●Exploratory testsREGRESSIONOTHERSTUFF
  6. 6. 2. Human life is very short
  7. 7. DDD = Deadline Driven Development
  8. 8. Let machines do therepeatable stuff(we keep only fun stuff for ourselves)
  9. 9. Test AutomationTest Automation
  10. 10. TDDDDT(Development Driven Testing)
  11. 11. Cant imagine developers notdoing testingCant imagine testers notdoing development
  12. 12. A professional in IT=Agile
  13. 13. Agile is allAgile is allabout...about...testing!testing!
  14. 14. Code smellvsTest smellwhen releases take timeor 100s of unimportant test casesslow us down
  15. 15. Iterative &Iterative &IncrementalIncrementalNOT Big-BangNOT Big-Bang
  16. 16. AdaptableAdaptableNOT PredictableNOT Predictable
  17. 17. SimplicitySimplicityMaximizing the amount of work not doneMaximizing the amount of work not done
  18. 18. TeamworkTeamworkNOT Lone RangerNOT Lone Ranger
  19. 19. a week
  20. 20. The good stuffCo-locationVerbal communicationContinuous improvementWorking increment of thesoftware!
  21. 21. But canBut can code cowboyscode cowboysactually do this?actually do this?
  22. 22. Or even worse,Or even worse,bureaucratsbureaucrats??
  23. 23. How to be a true professional?
  24. 24. Avoid hopeless meetings
  25. 25. Focus on whats
  26. 26. UNPROFESSIONALUNPROFESSIONAL
  27. 27. Responsibility of all
  28. 28. Pair programmingPair programmingPeer review – Concentration – QualityPeer review – Concentration – QualityKnowledge SharingKnowledge Sharing
  29. 29. TechnicalTechnicalexcellenceexcellence
  30. 30. SoftwareSoftwareCraftsmanshipCraftsmanship
  31. 31. http://manifesto.softwarecraftsmanship.org
  32. 32. SoftwareSoftwareCraftsmanship...Craftsmanship......the...the CodeborneCodeborne wayway
  33. 33. Automate everything(and more)DRYDont Repeat Yourself
  34. 34. DDT checklist✔Test code in the same repo✔All tests are part of (continuous) builds✔Tests should be FAST✔Track coverage, dont let it fall✔Pair with the developers✔Help us with the corner cases
  35. 35. TestersDevelopers
  36. 36. BDDBug Driven Development(You get what you measure)
  37. 37. Overspecialization“Plain specialists”– Too narrow-minded– Ineffective– Poor at communication and collaboration“Generalizing specialists”– Understand all required activities– Are best in one or few areas– Have a better chance of keeping their jobs
  38. 38. o16nDeveloper TesterBARRIERCommunicationCollaborationUnderstandingKnowledge-exchangeNew skillsSoftware Building Team
  39. 39. Lets stop all the fight!
  40. 40. The final product iswhat matters!(and happy users)
  41. 41. At Codeborne● We dont have strict roles● No testers, no analysts, no managers●Just craftsmen, who create software● We pair● And do everything what it takes● To create software from 0 to 100%
  42. 42. In more conservative organizations● Let developers write the tests● (learn also to do that)● Do not waste time on regression testing●Do other stuff that matters●Trust, remember the common goal●Never accept the idea of thats the way itsdone here
  43. 43. Lets do it!Anton Keks@antonkeks

×