SlideShare uma empresa Scribd logo
1 de 27
Baixar para ler offline
My Quest for Silver Bullets
TestNet May 2013
Alan Richardson
@eviltester
www.eviltester.com
www.seleniumsimplified.com
www.compendiumdev.co.uk
slides: http://unow.be/at/gtn_pres
Silver Bullets are Good
There is nothing intrinsically evil in a Silver
Bullet...
...except the fact that is a bullet...
...and that bullets can kill...
But, "Silver Bullet" as an ideal == good
@EvilTester slides: http://unow.be/at/gtn_pres
Silver kills bacteria
Silver teething rings are
good
Silver spoons are good
@EvilTester slides: http://unow.be/at/gtn_pres
The Lone Ranger used
Silver Bullets
... ignore the fact that the lone
ranger is a fictional character@EvilTester
Only good guys use Silver
Bullets
We all think we are the
good guy
Ours will be the 'right'
Silver Bullet
Often when we know
the least.
@EvilTester slides: http://unow.be/at/gtn_pres
You Can Only Hurt Werewolves With a
Silver Bullet
...ignore the fact
that werewolves
don't exist
@EvilTester slides: http://unow.be/at/gtn_pres
Automation
How Much
Reification & Nominalisation
Respect
Courage
More
Keep 'Silver Bullets' as ideals, and
processes as verbs.
@EvilTester slides: http://unow.be/at/gtn_pres
"When Verbs become Nouns" &
"The Thingification of abstract ideas"
We stop analysing, and
decomposing.
We start counting
I started my career building silver bullets
@EvilTester slides: http://unow.be/at/gtn_pres
Frameworks
Lesson Learned: Never build a
generic "Silver Bullet" tool for others
to use
...Never ...Ever.
Generic: "Meets no-one's needs exactly"
Test Automation Lesson: refactor when
needed, not "just in case". Generic models are
a side-effect, not a goal
@EvilTester slides: http://unow.be/at/gtn_pres
GUI Automation
Test Data
You can learn a lot by making Silver
Bullets
Model at the problem domain.
Abstract for the current context.
● DSL, Frameworks, Logging, Screenshots,
Keywords
Need, not want.
@EvilTester slides: http://unow.be/at/gtn_pres
Sometimes the bad guy,
thinks he's the good guy
... he knows best
... his Silver Bullet will
save the world
@EvilTester slides: http://unow.be/at/gtn_pres
Other Peoples' Silver
Bullets are like a black hole
They can suck you in. Run Away
@EvilTester slides: http://unow.be/at/gtn_pres
Other People's Silver Bullets can
hurt
Duck and Cover.
@EvilTester slides: http://unow.be/at/gtn_pres
Lesson Learned: NEVER let tools limit your
testing.
Never, EVER.
@EvilTester slides: http://unow.be/at/gtn_pres
Bypass Silver Bullet Constraints
● The tool is not the process
● The tool uses a database, use the database
● Don't like the GUI? Build your own and
automate theirs
● Use their API, only buy it, if it has one
Augment other tools and use them in
combination.
The lone Ranger uses Silver Bullets
as a last resort
Use What you
have first.
Assume you can
use it differently.
@EvilTester slides: http://unow.be/at/gtn_pres
The lone Ranger's gun only holds 6
Silver Bullets
Sears, Roebuck and Co. Catalogue #110 Fall 1900@EvilTester
Don't Build An
Armoury
Keep tools simple
With simple aims:
● Model, Observe,
Reflect, Inspect,
Manipulate
The lone Ranger uses Silver Bullets
as a last resort
... Change your definition of a tool
... Use tools to Augment your testing
... Don't list "Who" and "What", list "Why" and
How"
@EvilTester slides: http://unow.be/at/gtn_pres
The Lone Ranger didn't make his
own Silver Bullets... Tonto Did
Learn to fend for yourself.
@EvilTester slides: http://unow.be/at/gtn_pres
Sears, Roebuck and Co. Catalogue #110 Fall 1900
The Lone Ranger's Silver Bullets
remind him of the value of a human
life.
@EvilTester
The most dangerous part of a quest is
when you believe you have finished.
Are you sure you
want to sit at the
Seige Perilous?
@EvilTester
DC Comics, Little Shop of Horrors, Movie Adaptation Special, 1986
"By This Axe I Rule"
@EvilTester
"By This Axe I Rule", Robert E. Howard
"By this axe I rule! This is my sceptre! I
have struggled and sweated to be the
puppet king you wished me to be - to
king it your way. Now I use mine own
way! If you will not fight, you shall obey!
Laws that are just shall stand; laws that
have outlived their times I shall shatter
as I shattered that one! I am King!"
@EvilTester slides: http://unow.be/at/gtn_pres
"By This Axe I Rule", Robert E. Howard
Annotated for Software Testing by Alan Richardson
"By this axe I rule! This is my sceptre! I
have struggled and sweated to be the
puppet king you wished me to be - to
king it your way. Now I use mine own
way! If you will not fight, you shall obey!
Laws that are just shall stand; laws that
have outlived their times I shall shatter as
I shattered that one! I am King!"
The tool does not make me
king. Because I am king, I give
this tool power.
I tried using
other people's
Silver Bullets.
They didn't
work for me.
I take
responsibility for
what we do now.
We still seek new
stuff. But we will stop,
if it doesn't work. We
decide the value.I am King!
@EvilTester slides: http://unow.be/at/gtn_pres
Keep looking for new
ways. Keep questing and
looking for improvements.
But never allow yourself to
think that you have found
THE one.
@EvilTester slides: http://unow.be/at/gtn_pres
Alan Richardson is an Independent Test
Consultant based in the UK. He offers training
and consultancy in Selenium WebDriver,
exploratory and technical web testing.
● uk.linkedin.com/in/eviltester
Contact Alan for training and
consultancy tailored to your needs:
alan@compendiumdev.co.uk
Blogs and Websites
● SeleniumSimplified.com
● EvilTester.com
● Testing Papers and Tools
○ CompendiumDev.co.uk
Twitter: @eviltester
Online Training Courses
● Technical Web Testing 101
○ Unow.be/at/udemy101
● Intro to Selenium
○ Unow.be/at/udemystart
● Selenium 2 WebDriver API
○ Unow.be/at/udemyapi
Videos
youtube.com/user/EviltesterVideos
Books
Selenium Simplified
Unow.be/rc/selsimp
Summary Lessons Learned
● Never build a generic 'Silver Bullet' tool, ever
● Never let tools limit your testing
● Never build 'on top' of another tool
● Augment other tools, and use them in combination, use
their APIs if possible
● Use what you have first, assume you can use it
differently
● Stamp out ignorance, challenge people to learn
● Model at the problem domain, not a generic domain
● Generic models are a side-effect, not a goal
@EvilTester slides: http://unow.be/at/gtn_pres

Mais conteúdo relacionado

Mais de Alan Richardson

The Future of Testing Webinar
The Future of Testing WebinarThe Future of Testing Webinar
The Future of Testing WebinarAlan Richardson
 
Secrets and Mysteries of Automated Execution Keynote slides
Secrets and Mysteries of Automated Execution Keynote slidesSecrets and Mysteries of Automated Execution Keynote slides
Secrets and Mysteries of Automated Execution Keynote slidesAlan Richardson
 
Automating Pragmatically - Testival 20190604
Automating Pragmatically - Testival 20190604Automating Pragmatically - Testival 20190604
Automating Pragmatically - Testival 20190604Alan Richardson
 
Joy of Coding Conference 2019 slides - Alan Richardson
Joy of Coding Conference 2019 slides - Alan RichardsonJoy of Coding Conference 2019 slides - Alan Richardson
Joy of Coding Conference 2019 slides - Alan RichardsonAlan Richardson
 
Programming katas for Software Testers - CounterStrings
Programming katas for Software Testers - CounterStringsProgramming katas for Software Testers - CounterStrings
Programming katas for Software Testers - CounterStringsAlan Richardson
 
Technology Based Testing
Technology Based TestingTechnology Based Testing
Technology Based TestingAlan Richardson
 
About Consultant Alan Richardson Compendium Developments Evil Tester
About Consultant Alan Richardson Compendium Developments Evil TesterAbout Consultant Alan Richardson Compendium Developments Evil Tester
About Consultant Alan Richardson Compendium Developments Evil TesterAlan Richardson
 
Automating and Testing a REST API
Automating and Testing a REST APIAutomating and Testing a REST API
Automating and Testing a REST APIAlan Richardson
 
Technical and Testing Challenges: Using the "Protect The Square" Game
Technical and Testing Challenges: Using the "Protect The Square" GameTechnical and Testing Challenges: Using the "Protect The Square" Game
Technical and Testing Challenges: Using the "Protect The Square" GameAlan Richardson
 
TDD - Test Driven Development - Java JUnit FizzBuzz
TDD - Test Driven Development - Java JUnit FizzBuzzTDD - Test Driven Development - Java JUnit FizzBuzz
TDD - Test Driven Development - Java JUnit FizzBuzzAlan Richardson
 
If you want to automate, you learn to code
If you want to automate, you learn to codeIf you want to automate, you learn to code
If you want to automate, you learn to codeAlan Richardson
 
How To Test With Agility
How To Test With AgilityHow To Test With Agility
How To Test With AgilityAlan Richardson
 
Your Automated Execution Does Not Have to be Flaky
Your Automated Execution Does Not Have to be FlakyYour Automated Execution Does Not Have to be Flaky
Your Automated Execution Does Not Have to be FlakyAlan Richardson
 
What is Testability vs Automatability? How to improve your Software Testing.
What is Testability vs Automatability? How to improve your Software Testing.What is Testability vs Automatability? How to improve your Software Testing.
What is Testability vs Automatability? How to improve your Software Testing.Alan Richardson
 
What is Agile Testing? A MindMap
What is Agile Testing? A MindMapWhat is Agile Testing? A MindMap
What is Agile Testing? A MindMapAlan Richardson
 
Evil Tester's Guide to Agile Testing
Evil Tester's Guide to Agile TestingEvil Tester's Guide to Agile Testing
Evil Tester's Guide to Agile TestingAlan Richardson
 
The Evil Tester Show - Episode 001 Halloween 2017
The Evil Tester Show - Episode 001 Halloween 2017The Evil Tester Show - Episode 001 Halloween 2017
The Evil Tester Show - Episode 001 Halloween 2017Alan Richardson
 
What is Regression Testing?
What is Regression Testing?What is Regression Testing?
What is Regression Testing?Alan Richardson
 

Mais de Alan Richardson (20)

The Future of Testing Webinar
The Future of Testing WebinarThe Future of Testing Webinar
The Future of Testing Webinar
 
Devfest 2019-slides
Devfest 2019-slidesDevfest 2019-slides
Devfest 2019-slides
 
Secrets and Mysteries of Automated Execution Keynote slides
Secrets and Mysteries of Automated Execution Keynote slidesSecrets and Mysteries of Automated Execution Keynote slides
Secrets and Mysteries of Automated Execution Keynote slides
 
Automating Pragmatically - Testival 20190604
Automating Pragmatically - Testival 20190604Automating Pragmatically - Testival 20190604
Automating Pragmatically - Testival 20190604
 
Joy of Coding Conference 2019 slides - Alan Richardson
Joy of Coding Conference 2019 slides - Alan RichardsonJoy of Coding Conference 2019 slides - Alan Richardson
Joy of Coding Conference 2019 slides - Alan Richardson
 
Programming katas for Software Testers - CounterStrings
Programming katas for Software Testers - CounterStringsProgramming katas for Software Testers - CounterStrings
Programming katas for Software Testers - CounterStrings
 
Technology Based Testing
Technology Based TestingTechnology Based Testing
Technology Based Testing
 
About Consultant Alan Richardson Compendium Developments Evil Tester
About Consultant Alan Richardson Compendium Developments Evil TesterAbout Consultant Alan Richardson Compendium Developments Evil Tester
About Consultant Alan Richardson Compendium Developments Evil Tester
 
Shift left-testing
Shift left-testingShift left-testing
Shift left-testing
 
Automating and Testing a REST API
Automating and Testing a REST APIAutomating and Testing a REST API
Automating and Testing a REST API
 
Technical and Testing Challenges: Using the "Protect The Square" Game
Technical and Testing Challenges: Using the "Protect The Square" GameTechnical and Testing Challenges: Using the "Protect The Square" Game
Technical and Testing Challenges: Using the "Protect The Square" Game
 
TDD - Test Driven Development - Java JUnit FizzBuzz
TDD - Test Driven Development - Java JUnit FizzBuzzTDD - Test Driven Development - Java JUnit FizzBuzz
TDD - Test Driven Development - Java JUnit FizzBuzz
 
If you want to automate, you learn to code
If you want to automate, you learn to codeIf you want to automate, you learn to code
If you want to automate, you learn to code
 
How To Test With Agility
How To Test With AgilityHow To Test With Agility
How To Test With Agility
 
Your Automated Execution Does Not Have to be Flaky
Your Automated Execution Does Not Have to be FlakyYour Automated Execution Does Not Have to be Flaky
Your Automated Execution Does Not Have to be Flaky
 
What is Testability vs Automatability? How to improve your Software Testing.
What is Testability vs Automatability? How to improve your Software Testing.What is Testability vs Automatability? How to improve your Software Testing.
What is Testability vs Automatability? How to improve your Software Testing.
 
What is Agile Testing? A MindMap
What is Agile Testing? A MindMapWhat is Agile Testing? A MindMap
What is Agile Testing? A MindMap
 
Evil Tester's Guide to Agile Testing
Evil Tester's Guide to Agile TestingEvil Tester's Guide to Agile Testing
Evil Tester's Guide to Agile Testing
 
The Evil Tester Show - Episode 001 Halloween 2017
The Evil Tester Show - Episode 001 Halloween 2017The Evil Tester Show - Episode 001 Halloween 2017
The Evil Tester Show - Episode 001 Halloween 2017
 
What is Regression Testing?
What is Regression Testing?What is Regression Testing?
What is Regression Testing?
 

Último

Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
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 Nanonetsnaman860154
 
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 interpreternaman860154
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
[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.pdfhans926745
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 

Último (20)

Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.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 🐘
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
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
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
[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
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 

Keynote: My Quest for Silver Bullets

  • 1. My Quest for Silver Bullets TestNet May 2013 Alan Richardson @eviltester www.eviltester.com www.seleniumsimplified.com www.compendiumdev.co.uk slides: http://unow.be/at/gtn_pres
  • 2. Silver Bullets are Good There is nothing intrinsically evil in a Silver Bullet... ...except the fact that is a bullet... ...and that bullets can kill... But, "Silver Bullet" as an ideal == good @EvilTester slides: http://unow.be/at/gtn_pres
  • 3. Silver kills bacteria Silver teething rings are good Silver spoons are good @EvilTester slides: http://unow.be/at/gtn_pres
  • 4. The Lone Ranger used Silver Bullets ... ignore the fact that the lone ranger is a fictional character@EvilTester
  • 5. Only good guys use Silver Bullets We all think we are the good guy Ours will be the 'right' Silver Bullet Often when we know the least. @EvilTester slides: http://unow.be/at/gtn_pres
  • 6. You Can Only Hurt Werewolves With a Silver Bullet ...ignore the fact that werewolves don't exist @EvilTester slides: http://unow.be/at/gtn_pres
  • 7. Automation How Much Reification & Nominalisation Respect Courage More Keep 'Silver Bullets' as ideals, and processes as verbs. @EvilTester slides: http://unow.be/at/gtn_pres "When Verbs become Nouns" & "The Thingification of abstract ideas" We stop analysing, and decomposing. We start counting
  • 8. I started my career building silver bullets @EvilTester slides: http://unow.be/at/gtn_pres
  • 9. Frameworks Lesson Learned: Never build a generic "Silver Bullet" tool for others to use ...Never ...Ever. Generic: "Meets no-one's needs exactly" Test Automation Lesson: refactor when needed, not "just in case". Generic models are a side-effect, not a goal @EvilTester slides: http://unow.be/at/gtn_pres GUI Automation Test Data
  • 10. You can learn a lot by making Silver Bullets Model at the problem domain. Abstract for the current context. ● DSL, Frameworks, Logging, Screenshots, Keywords Need, not want. @EvilTester slides: http://unow.be/at/gtn_pres
  • 11. Sometimes the bad guy, thinks he's the good guy ... he knows best ... his Silver Bullet will save the world @EvilTester slides: http://unow.be/at/gtn_pres
  • 12. Other Peoples' Silver Bullets are like a black hole They can suck you in. Run Away @EvilTester slides: http://unow.be/at/gtn_pres
  • 13. Other People's Silver Bullets can hurt Duck and Cover. @EvilTester slides: http://unow.be/at/gtn_pres
  • 14. Lesson Learned: NEVER let tools limit your testing. Never, EVER. @EvilTester slides: http://unow.be/at/gtn_pres
  • 15. Bypass Silver Bullet Constraints ● The tool is not the process ● The tool uses a database, use the database ● Don't like the GUI? Build your own and automate theirs ● Use their API, only buy it, if it has one Augment other tools and use them in combination.
  • 16. The lone Ranger uses Silver Bullets as a last resort Use What you have first. Assume you can use it differently. @EvilTester slides: http://unow.be/at/gtn_pres
  • 17. The lone Ranger's gun only holds 6 Silver Bullets Sears, Roebuck and Co. Catalogue #110 Fall 1900@EvilTester Don't Build An Armoury Keep tools simple With simple aims: ● Model, Observe, Reflect, Inspect, Manipulate
  • 18. The lone Ranger uses Silver Bullets as a last resort ... Change your definition of a tool ... Use tools to Augment your testing ... Don't list "Who" and "What", list "Why" and How" @EvilTester slides: http://unow.be/at/gtn_pres
  • 19. The Lone Ranger didn't make his own Silver Bullets... Tonto Did Learn to fend for yourself. @EvilTester slides: http://unow.be/at/gtn_pres
  • 20. Sears, Roebuck and Co. Catalogue #110 Fall 1900 The Lone Ranger's Silver Bullets remind him of the value of a human life. @EvilTester
  • 21. The most dangerous part of a quest is when you believe you have finished. Are you sure you want to sit at the Seige Perilous? @EvilTester DC Comics, Little Shop of Horrors, Movie Adaptation Special, 1986
  • 22. "By This Axe I Rule" @EvilTester
  • 23. "By This Axe I Rule", Robert E. Howard "By this axe I rule! This is my sceptre! I have struggled and sweated to be the puppet king you wished me to be - to king it your way. Now I use mine own way! If you will not fight, you shall obey! Laws that are just shall stand; laws that have outlived their times I shall shatter as I shattered that one! I am King!" @EvilTester slides: http://unow.be/at/gtn_pres
  • 24. "By This Axe I Rule", Robert E. Howard Annotated for Software Testing by Alan Richardson "By this axe I rule! This is my sceptre! I have struggled and sweated to be the puppet king you wished me to be - to king it your way. Now I use mine own way! If you will not fight, you shall obey! Laws that are just shall stand; laws that have outlived their times I shall shatter as I shattered that one! I am King!" The tool does not make me king. Because I am king, I give this tool power. I tried using other people's Silver Bullets. They didn't work for me. I take responsibility for what we do now. We still seek new stuff. But we will stop, if it doesn't work. We decide the value.I am King! @EvilTester slides: http://unow.be/at/gtn_pres
  • 25. Keep looking for new ways. Keep questing and looking for improvements. But never allow yourself to think that you have found THE one. @EvilTester slides: http://unow.be/at/gtn_pres
  • 26. Alan Richardson is an Independent Test Consultant based in the UK. He offers training and consultancy in Selenium WebDriver, exploratory and technical web testing. ● uk.linkedin.com/in/eviltester Contact Alan for training and consultancy tailored to your needs: alan@compendiumdev.co.uk Blogs and Websites ● SeleniumSimplified.com ● EvilTester.com ● Testing Papers and Tools ○ CompendiumDev.co.uk Twitter: @eviltester Online Training Courses ● Technical Web Testing 101 ○ Unow.be/at/udemy101 ● Intro to Selenium ○ Unow.be/at/udemystart ● Selenium 2 WebDriver API ○ Unow.be/at/udemyapi Videos youtube.com/user/EviltesterVideos Books Selenium Simplified Unow.be/rc/selsimp
  • 27. Summary Lessons Learned ● Never build a generic 'Silver Bullet' tool, ever ● Never let tools limit your testing ● Never build 'on top' of another tool ● Augment other tools, and use them in combination, use their APIs if possible ● Use what you have first, assume you can use it differently ● Stamp out ignorance, challenge people to learn ● Model at the problem domain, not a generic domain ● Generic models are a side-effect, not a goal @EvilTester slides: http://unow.be/at/gtn_pres