SlideShare uma empresa Scribd logo
1 de 25
Baixar para ler offline
The Evil Tester's Guide to
Web Testing
Let's Test 2013
Alan Richardson
@eviltester
www.eviltester.com
www.compendiumdev.co.uk
www.seleniumsimplified.com
Slides available at http://unow.be/at/letstest2013
Blurb
I assert that Tester’s need technical skills when
testing ‘anything’. Since I primarily test web
applications, I will describe my technical view of Web
Testing.
In this session I will describe some of the tools that I
use when testing, not because technical web testing
revolves around tools, but because the technical
testing thinking process leads to the finding and
utilisation of tools.
Tools are the draw, the quick win for attendees. But
thought processes sit at the core of this talk. They
lead to tool augmentation, to exploring the built in
capabilities of the browsers, and to the skills we need
to test technically.
I will talk a little around theory, and, dangerously for a
live session, I will provide a demonstration of tool
augmented technical testing.
@EvilTester

http://unow.be/at/letstest2013
Technical Testing

@EvilTester

http://unow.be/at/letstest2013
What is Technical Testing? To You?
● How does the phrase make you feel?
● To you as a manager?
● To you as a tester?
● Can you identify with it?

@EvilTester

http://unow.be/at/letstest2013
What is Technical Testing? To Me?
● A reminder to keep "going deeper"
● It means "Tool Augmentation"
● How I describe what I do

@EvilTester

http://unow.be/at/letstest2013
A reminder to keep going deeper
MORIM - Model through Observation,
Reflection, Interrogation and Manipulation
● Model == what I think I currently understand
● Observations can corroborate or invalidate
my model
● Reflect to find gaps and lack of depth and
derive intent
● Interrogate - focused observation with intent
● Manipulation - hypothesis exploration
@EvilTester

http://unow.be/at/letstest2013
It means "Tool Augmentation"
● Tools to passively observe, maintain history
of observations
● Tools to alert on specific conditions
● Tools to observe the unobserved, and
interrogate the inaccessible
● Tools to help me model and reflect
● Tools to help me manipulate
● ... etc.
Never tools to control. Tools to augment.
@EvilTester

http://unow.be/at/letstest2013
How I describe what I do
●
●
●
●

Not a definition
A description of my current approaches
I try get as deep and technical as I can
I need to keep learning so that I can
understand the technology

@EvilTester

http://unow.be/at/letstest2013
Go beyond the surface structure
● Transformational Grammar
○ Surface & Deep Structure

● Questions operate as tools to investigate
Surface to Deep mapping in people
● Bug?
○ Surface != Deep
○ Surface1 != Surface2

@EvilTester

http://unow.be/at/letstest2013
Transformational Grammar
● Terminology originated with Chomsky
● Multiple surface structures
● Single Deep structure
● Deep structure
○ filtered, biased, distorted
■ Surface Structure

NB: I'm reinterpreting this. Abusing it for my
own purpose- to model Technical Testing
@EvilTester

http://unow.be/at/letstest2013
Questions operate as tools to investigate
Surface to Deep mapping in people
"Login doesn't work"
●
●
●
●

How Specifically?
How do you know?
Ever?
... etc.

We ask the system questions.

@EvilTester

http://unow.be/at/letstest2013
Some ways we notice bugs?
● Surface != Deep
When we can't transform from our Deep
Structure to the observed Surface Structure
● Surface1 != Surface2
When we spot different surface structures than
we would expect from our transformations
Surface == Model, Deep == Model, Model != Reality
@EvilTester

http://unow.be/at/letstest2013
How to do Technical testing ?
TM

● Identify tools to work with System Surface
Structures
● Questioning Systems at different surface
levels
● Learning System Structure Technology
● Modelling System Surface Structures

@EvilTester

http://unow.be/at/letstest2013
Technical Web Testing

@EvilTester

http://unow.be/at/letstest2013
Technical Web Testing
● Understand and model the Project context
○ scope of testing, aims of testing, stakeholders, etc.

● Understand and model the System context
○
○
○
○

the web context
the application context
the deployment context
the usage context

● For each identify
○ Technical Risks
○ Test Ideas
http://unow.be/at/letstest2013
Technicalities for Web Testing
● Understand and model the System context
○
○
○
○

the web context
the application context
the deployment context
the usage context

● For each identify
○ How can we observe it?
○ How can we interrogate it?
○ How can we manipulate it?

●
●
●

@EvilTester

Summary, Log, etc.
Details & Different views
Change & Amend

http://unow.be/at/letstest2013
Web Context: A Browser View

@EvilTester

http://unow.be/at/letstest2013
Web
Context: A
Browser
View Technical
Risks
Web
Context:
A Browser
View Technical
Tooling
Augmented
Exercise: Let's
Elaborate this
Model

@EvilTester

http://unow.be/at/letstest2013
Exercise:
What other models might we build?

@EvilTester

http://unow.be/at/letstest2013
Model suggests... Tool suggests...
We can work from model to tool...
We can also work from tool function to model.

@EvilTester

http://unow.be/at/letstest2013
"All together now" - a tool
augmented group exploration demo
● Using only out of the box browser
functionality.
● When exploring a web app
● What do we get out of the box to observe,
manipulate, interrogate?
● What can't we do?
● What tools might let us do it?
● What does the tool functionality suggest for
us?
@EvilTester

http://unow.be/at/letstest2013
Summary
● Technical Testing works with multiple
models of the System
● Model for:
○
○
○
○

Understanding
Risk
Test Ideas
Tooling ideas

● Tool Augmentation
○ Observe
○ Interrogate
○ Manipulate
@EvilTester

http://unow.be/at/letstest2013
Alan Richardson is an Independent Test
Consultant based in the UK. He offers training
and consultancy in Selenium WebDriver,
exploratory and technical web testing.

Online Training Courses
●
●

●

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

@EvilTester

http://unow.be/at/letstest2013

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

Mais conteúdo relacionado

Mais de 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

Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
SoniaTolstoy
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Krashi Coaching
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
PECB
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 

Último (20)

Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdf
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room service
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
General AI for Medical Educators April 2024
General AI for Medical Educators April 2024General AI for Medical Educators April 2024
General AI for Medical Educators April 2024
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 

The Evil Tester's Guide to Web Testing @ Lets Test 2013

  • 1. The Evil Tester's Guide to Web Testing Let's Test 2013 Alan Richardson @eviltester www.eviltester.com www.compendiumdev.co.uk www.seleniumsimplified.com Slides available at http://unow.be/at/letstest2013
  • 2. Blurb I assert that Tester’s need technical skills when testing ‘anything’. Since I primarily test web applications, I will describe my technical view of Web Testing. In this session I will describe some of the tools that I use when testing, not because technical web testing revolves around tools, but because the technical testing thinking process leads to the finding and utilisation of tools. Tools are the draw, the quick win for attendees. But thought processes sit at the core of this talk. They lead to tool augmentation, to exploring the built in capabilities of the browsers, and to the skills we need to test technically. I will talk a little around theory, and, dangerously for a live session, I will provide a demonstration of tool augmented technical testing. @EvilTester http://unow.be/at/letstest2013
  • 4. What is Technical Testing? To You? ● How does the phrase make you feel? ● To you as a manager? ● To you as a tester? ● Can you identify with it? @EvilTester http://unow.be/at/letstest2013
  • 5. What is Technical Testing? To Me? ● A reminder to keep "going deeper" ● It means "Tool Augmentation" ● How I describe what I do @EvilTester http://unow.be/at/letstest2013
  • 6. A reminder to keep going deeper MORIM - Model through Observation, Reflection, Interrogation and Manipulation ● Model == what I think I currently understand ● Observations can corroborate or invalidate my model ● Reflect to find gaps and lack of depth and derive intent ● Interrogate - focused observation with intent ● Manipulation - hypothesis exploration @EvilTester http://unow.be/at/letstest2013
  • 7. It means "Tool Augmentation" ● Tools to passively observe, maintain history of observations ● Tools to alert on specific conditions ● Tools to observe the unobserved, and interrogate the inaccessible ● Tools to help me model and reflect ● Tools to help me manipulate ● ... etc. Never tools to control. Tools to augment. @EvilTester http://unow.be/at/letstest2013
  • 8. How I describe what I do ● ● ● ● Not a definition A description of my current approaches I try get as deep and technical as I can I need to keep learning so that I can understand the technology @EvilTester http://unow.be/at/letstest2013
  • 9. Go beyond the surface structure ● Transformational Grammar ○ Surface & Deep Structure ● Questions operate as tools to investigate Surface to Deep mapping in people ● Bug? ○ Surface != Deep ○ Surface1 != Surface2 @EvilTester http://unow.be/at/letstest2013
  • 10. Transformational Grammar ● Terminology originated with Chomsky ● Multiple surface structures ● Single Deep structure ● Deep structure ○ filtered, biased, distorted ■ Surface Structure NB: I'm reinterpreting this. Abusing it for my own purpose- to model Technical Testing @EvilTester http://unow.be/at/letstest2013
  • 11. Questions operate as tools to investigate Surface to Deep mapping in people "Login doesn't work" ● ● ● ● How Specifically? How do you know? Ever? ... etc. We ask the system questions. @EvilTester http://unow.be/at/letstest2013
  • 12. Some ways we notice bugs? ● Surface != Deep When we can't transform from our Deep Structure to the observed Surface Structure ● Surface1 != Surface2 When we spot different surface structures than we would expect from our transformations Surface == Model, Deep == Model, Model != Reality @EvilTester http://unow.be/at/letstest2013
  • 13. How to do Technical testing ? TM ● Identify tools to work with System Surface Structures ● Questioning Systems at different surface levels ● Learning System Structure Technology ● Modelling System Surface Structures @EvilTester http://unow.be/at/letstest2013
  • 15. Technical Web Testing ● Understand and model the Project context ○ scope of testing, aims of testing, stakeholders, etc. ● Understand and model the System context ○ ○ ○ ○ the web context the application context the deployment context the usage context ● For each identify ○ Technical Risks ○ Test Ideas http://unow.be/at/letstest2013
  • 16. Technicalities for Web Testing ● Understand and model the System context ○ ○ ○ ○ the web context the application context the deployment context the usage context ● For each identify ○ How can we observe it? ○ How can we interrogate it? ○ How can we manipulate it? ● ● ● @EvilTester Summary, Log, etc. Details & Different views Change & Amend http://unow.be/at/letstest2013
  • 17. Web Context: A Browser View @EvilTester http://unow.be/at/letstest2013
  • 21. Exercise: What other models might we build? @EvilTester http://unow.be/at/letstest2013
  • 22. Model suggests... Tool suggests... We can work from model to tool... We can also work from tool function to model. @EvilTester http://unow.be/at/letstest2013
  • 23. "All together now" - a tool augmented group exploration demo ● Using only out of the box browser functionality. ● When exploring a web app ● What do we get out of the box to observe, manipulate, interrogate? ● What can't we do? ● What tools might let us do it? ● What does the tool functionality suggest for us? @EvilTester http://unow.be/at/letstest2013
  • 24. Summary ● Technical Testing works with multiple models of the System ● Model for: ○ ○ ○ ○ Understanding Risk Test Ideas Tooling ideas ● Tool Augmentation ○ Observe ○ Interrogate ○ Manipulate @EvilTester http://unow.be/at/letstest2013
  • 25. Alan Richardson is an Independent Test Consultant based in the UK. He offers training and consultancy in Selenium WebDriver, exploratory and technical web testing. Online Training Courses ● ● ● 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 @EvilTester http://unow.be/at/letstest2013 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