SlideShare ist ein Scribd-Unternehmen logo
1 von 46
Downloaden Sie, um offline zu lesen
Anton Keks
@antonkeks
Being a professional
software tester
(in XXI century)
Nordic Testing Days, 7.06.2013
Anton KeksAnton Keks
Co-founder ofCo-founder of
Lecturer atLecturer at Tallinn Technical UniversityTallinn Technical University
Agile EstoniaAgile Estonia board memberboard member
●
Author ofAuthor of Angry IP ScannerAngry IP Scanner
Strong believer inStrong believer in
AgileAgile andand Open-sourceOpen-source
Professionalism in medicine
● Surgeon 1 does the same operation over and
over and makes a lot of money
● Surgeon 2 knows all the standard operations
and 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 doctors
how to practice the innovation
Credit http://tinyplanet.ca/projects/professionalism.html
1. There are 2 kinds of tests...
Regression tests
and
Everything else
●
Unit tests
●
Integration tests
● Automated UI tests
●
Acceptance tests
● Usability (corridor) tests
● Performance tests
●
Penetration (security) tests
●
Exploratory tests
REGRESSION
OTHER
STUFF
2. Human life is very short
DDD = Deadline Driven Development
Let machines do the
repeatable stuff
(we keep only fun stuff for ourselves)
Test AutomationTest Automation
TDD
DDT
(Development Driven Testing)
Can't imagine developers not
doing testing
Can't imagine testers not
doing development
A professional in IT
=
Agile
Agile is allAgile is all
about...about...
testing!testing!
Code smell
vs
Test smell
when releases take time
or 100s of unimportant test cases
slow us down
Iterative &Iterative &
IncrementalIncremental
NOT Big-BangNOT Big-Bang
AdaptableAdaptable
NOT PredictableNOT Predictable
SimplicitySimplicity
Maximizing the amount of work not doneMaximizing the amount of work not done
TeamworkTeamwork
NOT Lone RangerNOT Lone Ranger
a week
The good stuff
Co-location
Verbal communication
Continuous improvement
Working increment of the
software!
But canBut can code cowboyscode cowboys
actually do this?actually do this?
Or even worse,Or even worse,
bureaucratsbureaucrats??
How to be a true professional?
Avoid hopeless meetings
Focus on what's
UNPROFESSIONAL
UNPROFESSIONAL
Responsibility of all
Pair programmingPair programming
Peer review – Concentration – QualityPeer review – Concentration – Quality
Knowledge SharingKnowledge Sharing
TechnicalTechnical
excellenceexcellence
SoftwareSoftware
CraftsmanshipCraftsmanship
http://manifesto.softwarecraftsmanship.org
SoftwareSoftware
Craftsmanship...Craftsmanship...
...the...the CodeborneCodeborne wayway
Automate everything
(and more)
DRY
Don't Repeat Yourself
DDT checklist
✔Test code in the same repo
✔All tests are part of (continuous) builds
✔Tests should be FAST
✔Track coverage, don't let it fall
✔Pair with the developers
✔Help us with the corner cases
Testers
Developers
BDD
Bug Driven Development
(You get what you measure)
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
o16n
Developer Tester
BARRIERCommunication
Collaboration
Understanding
Knowledge-exchange
New skills
Software Building Team
Let's stop all the fight!
The final product is
what matters!
(and happy users)
At Codeborne
● We don't 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%
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 that's the way its
done here
Let's do it!
Anton Keks
@antonkeks

Weitere ähnliche Inhalte

Was ist angesagt?

Test driven development
Test driven developmentTest driven development
Test driven development
Shalabh Saxena
 
Overview on TDD (Test Driven Development) & ATDD (Acceptance Test Driven Deve...
Overview on TDD (Test Driven Development) & ATDD (Acceptance Test Driven Deve...Overview on TDD (Test Driven Development) & ATDD (Acceptance Test Driven Deve...
Overview on TDD (Test Driven Development) & ATDD (Acceptance Test Driven Deve...
Zohirul Alam Tiemoon
 

Was ist angesagt? (20)

Design for Testability
Design for Testability Design for Testability
Design for Testability
 
Agile Test Driven Development
Agile Test Driven DevelopmentAgile Test Driven Development
Agile Test Driven Development
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Test driven development
Test driven developmentTest driven development
Test driven development
 
TDD refresher
TDD refresherTDD refresher
TDD refresher
 
Why Test Driven Development?
Why Test Driven Development?Why Test Driven Development?
Why Test Driven Development?
 
Test driven development(tdd)
Test driven development(tdd)Test driven development(tdd)
Test driven development(tdd)
 
Tdd
TddTdd
Tdd
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Design For Testability
Design For TestabilityDesign For Testability
Design For Testability
 
TDD - Test Driven Development
TDD - Test Driven DevelopmentTDD - Test Driven Development
TDD - Test Driven Development
 
A Not-So-Serious Introduction to Test Driven Development (TDD)
A Not-So-Serious Introduction to Test Driven Development (TDD) A Not-So-Serious Introduction to Test Driven Development (TDD)
A Not-So-Serious Introduction to Test Driven Development (TDD)
 
Overview on TDD (Test Driven Development) & ATDD (Acceptance Test Driven Deve...
Overview on TDD (Test Driven Development) & ATDD (Acceptance Test Driven Deve...Overview on TDD (Test Driven Development) & ATDD (Acceptance Test Driven Deve...
Overview on TDD (Test Driven Development) & ATDD (Acceptance Test Driven Deve...
 
TDD CrashCourse Part2: TDD
TDD CrashCourse Part2: TDDTDD CrashCourse Part2: TDD
TDD CrashCourse Part2: TDD
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Test Driven Development Powered by LEGO
Test Driven Development Powered by LEGOTest Driven Development Powered by LEGO
Test Driven Development Powered by LEGO
 
Test-Driven Development (TDD)
Test-Driven Development (TDD)Test-Driven Development (TDD)
Test-Driven Development (TDD)
 
TDD and Simple Design Workshop - Session 1 - March 2019
TDD and Simple Design Workshop - Session 1 - March 2019TDD and Simple Design Workshop - Session 1 - March 2019
TDD and Simple Design Workshop - Session 1 - March 2019
 
TDD - Agile
TDD - Agile TDD - Agile
TDD - Agile
 
Test driven development
Test driven developmentTest driven development
Test driven development
 

Andere mochten auch

Tester career path
Tester career pathTester career path
Tester career path
gaoliang641
 

Andere mochten auch (20)

The Myths and Facts Surrounding Software Testing
The Myths and Facts Surrounding Software TestingThe Myths and Facts Surrounding Software Testing
The Myths and Facts Surrounding Software Testing
 
Make a career in software testing: MobilePro - Mobile Testing Professional Pr...
Make a career in software testing: MobilePro - Mobile Testing Professional Pr...Make a career in software testing: MobilePro - Mobile Testing Professional Pr...
Make a career in software testing: MobilePro - Mobile Testing Professional Pr...
 
Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...
Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...
Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...
 
6 myths of Software Testing (As I have seen during my testing journey)
6 myths of Software Testing (As I have seen during my testing journey)6 myths of Software Testing (As I have seen during my testing journey)
6 myths of Software Testing (As I have seen during my testing journey)
 
5 Myths and Realities
5 Myths and Realities5 Myths and Realities
5 Myths and Realities
 
Software Testing Career Skill Development on BugDay Bangkok 2009
Software Testing Career Skill Development on BugDay Bangkok 2009Software Testing Career Skill Development on BugDay Bangkok 2009
Software Testing Career Skill Development on BugDay Bangkok 2009
 
12 Tips to Become a more Professional Tester
12 Tips to Become a more Professional Tester12 Tips to Become a more Professional Tester
12 Tips to Become a more Professional Tester
 
Building frameworks over Selenium
Building frameworks over SeleniumBuilding frameworks over Selenium
Building frameworks over Selenium
 
Software testing career
Software testing careerSoftware testing career
Software testing career
 
Tester career path
Tester career pathTester career path
Tester career path
 
Stc 2016 regional-round-iot testing in agile.
Stc 2016 regional-round-iot testing in agile.Stc 2016 regional-round-iot testing in agile.
Stc 2016 regional-round-iot testing in agile.
 
Continuous Integration with Maven for Android apps
Continuous Integration with Maven for Android appsContinuous Integration with Maven for Android apps
Continuous Integration with Maven for Android apps
 
Cross-browser testing in the real world
Cross-browser testing in the real worldCross-browser testing in the real world
Cross-browser testing in the real world
 
Selenium Grid
Selenium GridSelenium Grid
Selenium Grid
 
Selenium grid workshop london 2016
Selenium grid workshop london 2016Selenium grid workshop london 2016
Selenium grid workshop london 2016
 
10 Reasons to Join the PTA
10 Reasons to Join the PTA10 Reasons to Join the PTA
10 Reasons to Join the PTA
 
How To Use Selenium Successfully (Java Edition)
How To Use Selenium Successfully (Java Edition)How To Use Selenium Successfully (Java Edition)
How To Use Selenium Successfully (Java Edition)
 
IoT Testing by Robins Abraham
IoT Testing by Robins AbrahamIoT Testing by Robins Abraham
IoT Testing by Robins Abraham
 
Selenium Frameworks
Selenium FrameworksSelenium Frameworks
Selenium Frameworks
 
ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level Basic
 

Ähnlich wie Being a professional software tester

5-Ways-to-Revolutionize-Your-Software-Testing
5-Ways-to-Revolutionize-Your-Software-Testing5-Ways-to-Revolutionize-Your-Software-Testing
5-Ways-to-Revolutionize-Your-Software-Testing
Mary Clemons
 
Intro to-ssdl--lone-star-php-2013
Intro to-ssdl--lone-star-php-2013Intro to-ssdl--lone-star-php-2013
Intro to-ssdl--lone-star-php-2013
nanderoo
 

Ähnlich wie Being a professional software tester (20)

SCA in an Agile World | June 2010
SCA in an Agile World | June 2010SCA in an Agile World | June 2010
SCA in an Agile World | June 2010
 
Automatic for the People
Automatic for the PeopleAutomatic for the People
Automatic for the People
 
Agile Testing 20021015
Agile Testing 20021015Agile Testing 20021015
Agile Testing 20021015
 
5-Ways-to-Revolutionize-Your-Software-Testing
5-Ways-to-Revolutionize-Your-Software-Testing5-Ways-to-Revolutionize-Your-Software-Testing
5-Ways-to-Revolutionize-Your-Software-Testing
 
Continuous delivery is more than dev ops
Continuous delivery is more than dev opsContinuous delivery is more than dev ops
Continuous delivery is more than dev ops
 
Agile testing
Agile testingAgile testing
Agile testing
 
DevOps interview questions and answers
DevOps interview questions and answersDevOps interview questions and answers
DevOps interview questions and answers
 
How to Manage the Risk of your Polyglot Environments
How to Manage the Risk of your Polyglot EnvironmentsHow to Manage the Risk of your Polyglot Environments
How to Manage the Risk of your Polyglot Environments
 
Developer disciplines
Developer disciplinesDeveloper disciplines
Developer disciplines
 
Quality Assurance - The Other Side of the Fence
Quality Assurance - The Other Side of the FenceQuality Assurance - The Other Side of the Fence
Quality Assurance - The Other Side of the Fence
 
STM-UNIT-1.pptx
STM-UNIT-1.pptxSTM-UNIT-1.pptx
STM-UNIT-1.pptx
 
xUnit and TDD: Why and How in Enterprise Software, August 2012
xUnit and TDD: Why and How in Enterprise Software, August 2012xUnit and TDD: Why and How in Enterprise Software, August 2012
xUnit and TDD: Why and How in Enterprise Software, August 2012
 
Software Analytics: The Dark Side and the Test Side
Software Analytics: The Dark Side and the Test SideSoftware Analytics: The Dark Side and the Test Side
Software Analytics: The Dark Side and the Test Side
 
Stepping Outside
Stepping OutsideStepping Outside
Stepping Outside
 
TDD in Agile
TDD in AgileTDD in Agile
TDD in Agile
 
Intro to-ssdl--lone-star-php-2013
Intro to-ssdl--lone-star-php-2013Intro to-ssdl--lone-star-php-2013
Intro to-ssdl--lone-star-php-2013
 
Anti-Patterns
Anti-PatternsAnti-Patterns
Anti-Patterns
 
Agile Mëtteg #5: Agile Testing
Agile Mëtteg #5: Agile TestingAgile Mëtteg #5: Agile Testing
Agile Mëtteg #5: Agile Testing
 
Manual testing ppt
Manual testing pptManual testing ppt
Manual testing ppt
 
Best pratice
Best praticeBest pratice
Best pratice
 

Mehr von Anton Keks

Mehr von Anton Keks (16)

Java Course 14: Beans, Applets, GUI
Java Course 14: Beans, Applets, GUIJava Course 14: Beans, Applets, GUI
Java Course 14: Beans, Applets, GUI
 
Java Course 13: JDBC & Logging
Java Course 13: JDBC & LoggingJava Course 13: JDBC & Logging
Java Course 13: JDBC & Logging
 
Java Course 12: XML & XSL, Web & Servlets
Java Course 12: XML & XSL, Web & ServletsJava Course 12: XML & XSL, Web & Servlets
Java Course 12: XML & XSL, Web & Servlets
 
Java Course 11: Design Patterns
Java Course 11: Design PatternsJava Course 11: Design Patterns
Java Course 11: Design Patterns
 
Java Course 10: Threads and Concurrency
Java Course 10: Threads and ConcurrencyJava Course 10: Threads and Concurrency
Java Course 10: Threads and Concurrency
 
Java Course 9: Networking and Reflection
Java Course 9: Networking and ReflectionJava Course 9: Networking and Reflection
Java Course 9: Networking and Reflection
 
Java Course 8: I/O, Files and Streams
Java Course 8: I/O, Files and StreamsJava Course 8: I/O, Files and Streams
Java Course 8: I/O, Files and Streams
 
Java Course 7: Text processing, Charsets & Encodings
Java Course 7: Text processing, Charsets & EncodingsJava Course 7: Text processing, Charsets & Encodings
Java Course 7: Text processing, Charsets & Encodings
 
Java Course 6: Introduction to Agile
Java Course 6: Introduction to AgileJava Course 6: Introduction to Agile
Java Course 6: Introduction to Agile
 
Java Course 5: Enums, Generics, Assertions
Java Course 5: Enums, Generics, AssertionsJava Course 5: Enums, Generics, Assertions
Java Course 5: Enums, Generics, Assertions
 
Java Course 4: Exceptions & Collections
Java Course 4: Exceptions & CollectionsJava Course 4: Exceptions & Collections
Java Course 4: Exceptions & Collections
 
Java Course 3: OOP
Java Course 3: OOPJava Course 3: OOP
Java Course 3: OOP
 
Java Course 2: Basics
Java Course 2: BasicsJava Course 2: Basics
Java Course 2: Basics
 
Java Course 1: Introduction
Java Course 1: IntroductionJava Course 1: Introduction
Java Course 1: Introduction
 
Java Course 15: Ant, Scripting, Spring, Hibernate
Java Course 15: Ant, Scripting, Spring, HibernateJava Course 15: Ant, Scripting, Spring, Hibernate
Java Course 15: Ant, Scripting, Spring, Hibernate
 
Being a Professional Software Developer
Being a Professional Software DeveloperBeing a Professional Software Developer
Being a Professional Software Developer
 

Kürzlich hochgeladen

Kürzlich hochgeladen (20)

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 

Being a professional software tester