SlideShare a Scribd company logo
1 of 14
Executable
Specifications with
FitNesse and
Selenium
Dawn Cannan
http://passionatetester.com
@dckismet on Twitter
Who is this lady?
http://passionatetester.com
• Currently Tester at 42 Lines
• Software testing specialist for 10 years
• One-time developer
• Test team builder
• Maintainer on .net Selenesse open source project
What do all of these words mean?
• Executable Specifications?
• FitNesse?
• Selenium?
The Test Automation Pyramid
Created by Brian Marick, used in the book Agile Testing, by Lisa Crispin and Janet Gregory
Ever seen this before?
• What’s developed isn’t what the customer wanted
• Buggy product, lots of rework
• Some team members lack domain knowledge, don’t
understand context of features
• Business team doesn’t trust development team to
complete tasks well/ on time
Business vs Dev Cage
Match
That’s not
what I
asked for!
SCOPE
CREEP!
How can we minimize this?
• Start by getting the right people together: usually, a
customer/business person, developer, tester
• Talk through the details, come to a common vocabulary
• Specify as many examples as make sense
Benefits of this approach
When examples are written in a way that can be run as
tests:
•Miscommunications due to “playing telephone” are
minimized
•Everyone is on the same page very early
•Bugs are prevented
Test Automation
Driving a browser with Selenium
Gotchas in automation
Test automation in the browser presents challenges:
•Locating elements – using CSS Selectors
•Synchronizing with the web server – Waiting for
elements to appear
•Maintaining over time – creating common actions
Using the Wiki
Defining Selenium tests in the FitNesse wiki
FitNesse framework
• Web page, accessible to all team members
• Wiki markup is easy to learn
• Plain text, can be checked in with source code
• Executes tests and reports results back
• Shows test execution history
Wrap-up
References
• My blog: http://passionatetester.com
• FitNesse: http://fitnesse.info
• Selenium: http://seleniumhq.org
or
• Sauce RC: http://saucelabs.com/products/downloads
• SeleNesse: http://github.com/marisaseal/selenesse
• CSS Selectors:
http://saucelabs.com/blog/index.php/2011/01/why-
jquery-in-selenium-css-locators-is-the-way-to-go/

More Related Content

What's hot

Scrum And The Enterprise
Scrum And The EnterpriseScrum And The Enterprise
Scrum And The EnterpriseJames Peckham
 
Creating change from within - Agile Practitioners 2012
Creating change from within - Agile Practitioners 2012Creating change from within - Agile Practitioners 2012
Creating change from within - Agile Practitioners 2012Dror Helper
 
Building High-Growth Products with Jobs-to-be-Done
Building High-Growth Products with Jobs-to-be-DoneBuilding High-Growth Products with Jobs-to-be-Done
Building High-Growth Products with Jobs-to-be-DoneProduct School
 
The Smells Of Bad Design
The Smells Of Bad DesignThe Smells Of Bad Design
The Smells Of Bad Designguest446c0
 
Oredev 2014 KNJohnson-tester love developer
Oredev 2014 KNJohnson-tester love developerOredev 2014 KNJohnson-tester love developer
Oredev 2014 KNJohnson-tester love developerKaren N. Johnson
 
Building a culture of quality real world examples #CAST2015
Building a culture of quality  real world examples #CAST2015Building a culture of quality  real world examples #CAST2015
Building a culture of quality real world examples #CAST2015Josh Meier
 
Kens Scrum Presentation
Kens Scrum PresentationKens Scrum Presentation
Kens Scrum PresentationJames Peckham
 
Rob lambert10 Behaviors of Effective Employees" at OnlineTestConf.
Rob lambert10 Behaviors of Effective Employees" at OnlineTestConf.Rob lambert10 Behaviors of Effective Employees" at OnlineTestConf.
Rob lambert10 Behaviors of Effective Employees" at OnlineTestConf.PractiTest
 
An Introduction to XP and Agile
An Introduction to XP and AgileAn Introduction to XP and Agile
An Introduction to XP and AgileJason Yip
 
Diy continuous integration
Diy continuous integrationDiy continuous integration
Diy continuous integrationPromet Source
 
Build Measure Learn - Designing Your MVP
Build Measure Learn - Designing Your MVPBuild Measure Learn - Designing Your MVP
Build Measure Learn - Designing Your MVPemilller1024
 
How to Make Great Software Estimates
How to Make Great Software EstimatesHow to Make Great Software Estimates
How to Make Great Software EstimatesGreg Thomas
 
Id camp x dicoding live : persiapan jadi software engineer hebat 101
Id camp x dicoding live : persiapan jadi software engineer hebat 101Id camp x dicoding live : persiapan jadi software engineer hebat 101
Id camp x dicoding live : persiapan jadi software engineer hebat 101DicodingEvent
 
From Testing to Product Management
From Testing to Product ManagementFrom Testing to Product Management
From Testing to Product ManagementDaniel Knott
 
Building a Quality Software Shop
Building a Quality Software ShopBuilding a Quality Software Shop
Building a Quality Software ShopStephen Anderson
 
Please solve the right problem!
Please solve the right problem!Please solve the right problem!
Please solve the right problem!Jisha Sharma
 

What's hot (20)

Ilovepdf merged (4)
Ilovepdf merged (4)Ilovepdf merged (4)
Ilovepdf merged (4)
 
Scrum And The Enterprise
Scrum And The EnterpriseScrum And The Enterprise
Scrum And The Enterprise
 
Creating change from within - Agile Practitioners 2012
Creating change from within - Agile Practitioners 2012Creating change from within - Agile Practitioners 2012
Creating change from within - Agile Practitioners 2012
 
Building High-Growth Products with Jobs-to-be-Done
Building High-Growth Products with Jobs-to-be-DoneBuilding High-Growth Products with Jobs-to-be-Done
Building High-Growth Products with Jobs-to-be-Done
 
The Smells Of Bad Design
The Smells Of Bad DesignThe Smells Of Bad Design
The Smells Of Bad Design
 
Intro agile for PO's
Intro agile for PO'sIntro agile for PO's
Intro agile for PO's
 
Oredev 2014 KNJohnson-tester love developer
Oredev 2014 KNJohnson-tester love developerOredev 2014 KNJohnson-tester love developer
Oredev 2014 KNJohnson-tester love developer
 
User Stories
User StoriesUser Stories
User Stories
 
What not to do when adopting Agile
What not to do when adopting AgileWhat not to do when adopting Agile
What not to do when adopting Agile
 
Building a culture of quality real world examples #CAST2015
Building a culture of quality  real world examples #CAST2015Building a culture of quality  real world examples #CAST2015
Building a culture of quality real world examples #CAST2015
 
Kens Scrum Presentation
Kens Scrum PresentationKens Scrum Presentation
Kens Scrum Presentation
 
Rob lambert10 Behaviors of Effective Employees" at OnlineTestConf.
Rob lambert10 Behaviors of Effective Employees" at OnlineTestConf.Rob lambert10 Behaviors of Effective Employees" at OnlineTestConf.
Rob lambert10 Behaviors of Effective Employees" at OnlineTestConf.
 
An Introduction to XP and Agile
An Introduction to XP and AgileAn Introduction to XP and Agile
An Introduction to XP and Agile
 
Diy continuous integration
Diy continuous integrationDiy continuous integration
Diy continuous integration
 
Build Measure Learn - Designing Your MVP
Build Measure Learn - Designing Your MVPBuild Measure Learn - Designing Your MVP
Build Measure Learn - Designing Your MVP
 
How to Make Great Software Estimates
How to Make Great Software EstimatesHow to Make Great Software Estimates
How to Make Great Software Estimates
 
Id camp x dicoding live : persiapan jadi software engineer hebat 101
Id camp x dicoding live : persiapan jadi software engineer hebat 101Id camp x dicoding live : persiapan jadi software engineer hebat 101
Id camp x dicoding live : persiapan jadi software engineer hebat 101
 
From Testing to Product Management
From Testing to Product ManagementFrom Testing to Product Management
From Testing to Product Management
 
Building a Quality Software Shop
Building a Quality Software ShopBuilding a Quality Software Shop
Building a Quality Software Shop
 
Please solve the right problem!
Please solve the right problem!Please solve the right problem!
Please solve the right problem!
 

Similar to Executable Specifications with FitNesse and Selenium

Executable Specifications with FitNesse and Selenium
Executable Specifications with FitNesse and SeleniumExecutable Specifications with FitNesse and Selenium
Executable Specifications with FitNesse and SeleniumDawn Code
 
How testers add value to the organization appium conf
How testers add value to the organization  appium confHow testers add value to the organization  appium conf
How testers add value to the organization appium confCorina Pip
 
Qa mock up interview for manual testing
Qa mock up interview for manual testingQa mock up interview for manual testing
Qa mock up interview for manual testingKadharBashaJ
 
5 Keys to Building a Successful DevOps Culture featuring Mandi Walls
5 Keys to Building a Successful DevOps Culture featuring Mandi Walls5 Keys to Building a Successful DevOps Culture featuring Mandi Walls
5 Keys to Building a Successful DevOps Culture featuring Mandi WallsSerena Software
 
5 keys to Building a Successful DevOps Culture featuring Mandi Walls (Present...
5 keys to Building a Successful DevOps Culture featuring Mandi Walls (Present...5 keys to Building a Successful DevOps Culture featuring Mandi Walls (Present...
5 keys to Building a Successful DevOps Culture featuring Mandi Walls (Present...Serena Software
 
Scrum plus – why scrum is not enough for successful delivery
Scrum plus – why scrum is not enough for successful deliveryScrum plus – why scrum is not enough for successful delivery
Scrum plus – why scrum is not enough for successful deliveryNaveen Kumar Singh
 
Tester Challenges in Agile ?
Tester Challenges in Agile ?Tester Challenges in Agile ?
Tester Challenges in Agile ?alind tiwari
 
LEAN: Dream Maker Developments
LEAN: Dream Maker DevelopmentsLEAN: Dream Maker Developments
LEAN: Dream Maker DevelopmentsVadim Davydov
 
Вадим Давидов та Людмила Гребенюк “LEAN: Dream Maker Developments” Kharkiv Pr...
Вадим Давидов та Людмила Гребенюк “LEAN: Dream Maker Developments” Kharkiv Pr...Вадим Давидов та Людмила Гребенюк “LEAN: Dream Maker Developments” Kharkiv Pr...
Вадим Давидов та Людмила Гребенюк “LEAN: Dream Maker Developments” Kharkiv Pr...Lviv Startup Club
 
Agile testingandautomation
Agile testingandautomationAgile testingandautomation
Agile testingandautomationjeisner
 
STARWEST 2013 - What Executive Value in Testing
STARWEST 2013 - What Executive Value in TestingSTARWEST 2013 - What Executive Value in Testing
STARWEST 2013 - What Executive Value in TestingMichael Kelly
 
Biggest Mistake of Broke Web Designers
Biggest Mistake of Broke Web Designers Biggest Mistake of Broke Web Designers
Biggest Mistake of Broke Web Designers New Tricks
 
When Management Asks You: “Do You Accept Agile as Your Lord and Savior?"
When Management Asks You: “Do You Accept Agile as Your Lord and Savior?"When Management Asks You: “Do You Accept Agile as Your Lord and Savior?"
When Management Asks You: “Do You Accept Agile as Your Lord and Savior?"admford
 
Essential practices and thinking tools for Agile Adoption
Essential practices and thinking tools for Agile AdoptionEssential practices and thinking tools for Agile Adoption
Essential practices and thinking tools for Agile AdoptionSteven Mak
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software DevelopmentSynerzip
 
Synerzip Agile Software Development
Synerzip Agile Software DevelopmentSynerzip Agile Software Development
Synerzip Agile Software DevelopmentSynerzip
 
The Un-researched Persona
The Un-researched PersonaThe Un-researched Persona
The Un-researched Personanlemonier
 

Similar to Executable Specifications with FitNesse and Selenium (20)

Executable Specifications with FitNesse and Selenium
Executable Specifications with FitNesse and SeleniumExecutable Specifications with FitNesse and Selenium
Executable Specifications with FitNesse and Selenium
 
How testers add value to the organization appium conf
How testers add value to the organization  appium confHow testers add value to the organization  appium conf
How testers add value to the organization appium conf
 
Qa mock up interview for manual testing
Qa mock up interview for manual testingQa mock up interview for manual testing
Qa mock up interview for manual testing
 
5 Keys to Building a Successful DevOps Culture featuring Mandi Walls
5 Keys to Building a Successful DevOps Culture featuring Mandi Walls5 Keys to Building a Successful DevOps Culture featuring Mandi Walls
5 Keys to Building a Successful DevOps Culture featuring Mandi Walls
 
5 keys to Building a Successful DevOps Culture featuring Mandi Walls (Present...
5 keys to Building a Successful DevOps Culture featuring Mandi Walls (Present...5 keys to Building a Successful DevOps Culture featuring Mandi Walls (Present...
5 keys to Building a Successful DevOps Culture featuring Mandi Walls (Present...
 
Scrum plus – why scrum is not enough for successful delivery
Scrum plus – why scrum is not enough for successful deliveryScrum plus – why scrum is not enough for successful delivery
Scrum plus – why scrum is not enough for successful delivery
 
Testers developers think differently
Testers developers think differentlyTesters developers think differently
Testers developers think differently
 
Tester Challenges in Agile ?
Tester Challenges in Agile ?Tester Challenges in Agile ?
Tester Challenges in Agile ?
 
Agile process
Agile processAgile process
Agile process
 
LEAN: Dream Maker Developments
LEAN: Dream Maker DevelopmentsLEAN: Dream Maker Developments
LEAN: Dream Maker Developments
 
Вадим Давидов та Людмила Гребенюк “LEAN: Dream Maker Developments” Kharkiv Pr...
Вадим Давидов та Людмила Гребенюк “LEAN: Dream Maker Developments” Kharkiv Pr...Вадим Давидов та Людмила Гребенюк “LEAN: Dream Maker Developments” Kharkiv Pr...
Вадим Давидов та Людмила Гребенюк “LEAN: Dream Maker Developments” Kharkiv Pr...
 
Agile testingandautomation
Agile testingandautomationAgile testingandautomation
Agile testingandautomation
 
Walls agile2013
Walls agile2013Walls agile2013
Walls agile2013
 
STARWEST 2013 - What Executive Value in Testing
STARWEST 2013 - What Executive Value in TestingSTARWEST 2013 - What Executive Value in Testing
STARWEST 2013 - What Executive Value in Testing
 
Biggest Mistake of Broke Web Designers
Biggest Mistake of Broke Web Designers Biggest Mistake of Broke Web Designers
Biggest Mistake of Broke Web Designers
 
When Management Asks You: “Do You Accept Agile as Your Lord and Savior?"
When Management Asks You: “Do You Accept Agile as Your Lord and Savior?"When Management Asks You: “Do You Accept Agile as Your Lord and Savior?"
When Management Asks You: “Do You Accept Agile as Your Lord and Savior?"
 
Essential practices and thinking tools for Agile Adoption
Essential practices and thinking tools for Agile AdoptionEssential practices and thinking tools for Agile Adoption
Essential practices and thinking tools for Agile Adoption
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
Synerzip Agile Software Development
Synerzip Agile Software DevelopmentSynerzip Agile Software Development
Synerzip Agile Software Development
 
The Un-researched Persona
The Un-researched PersonaThe Un-researched Persona
The Un-researched Persona
 

More from Dawn Code

A Sampling of Tools
A Sampling of ToolsA Sampling of Tools
A Sampling of ToolsDawn Code
 
Testing in the Wild
Testing in the WildTesting in the Wild
Testing in the WildDawn Code
 
Fitting Organizational Structure
Fitting Organizational StructureFitting Organizational Structure
Fitting Organizational StructureDawn Code
 
Pair development
Pair developmentPair development
Pair developmentDawn Code
 
Remote Dev/Test Pairing
Remote Dev/Test PairingRemote Dev/Test Pairing
Remote Dev/Test PairingDawn Code
 
Crowdsource Your Career
Crowdsource Your CareerCrowdsource Your Career
Crowdsource Your CareerDawn Code
 
How Low Can Your Tests Go
How Low Can Your Tests GoHow Low Can Your Tests Go
How Low Can Your Tests GoDawn Code
 
Writing Maintainable Test Automation
Writing Maintainable Test AutomationWriting Maintainable Test Automation
Writing Maintainable Test AutomationDawn Code
 
Exploratory testing part 2
Exploratory testing part 2Exploratory testing part 2
Exploratory testing part 2Dawn Code
 
Exploratory testing part 1
Exploratory testing part 1Exploratory testing part 1
Exploratory testing part 1Dawn Code
 
Exploratory testing part 3
Exploratory testing part 3Exploratory testing part 3
Exploratory testing part 3Dawn Code
 
Agile and Exploratory Testing Jeopardy
Agile and Exploratory Testing JeopardyAgile and Exploratory Testing Jeopardy
Agile and Exploratory Testing JeopardyDawn Code
 
Pair Development from the Trenches
Pair Development from the TrenchesPair Development from the Trenches
Pair Development from the TrenchesDawn Code
 
Page objects: the good, the bad, the ugly
Page objects: the good, the bad, the uglyPage objects: the good, the bad, the ugly
Page objects: the good, the bad, the uglyDawn Code
 
Testing Legacy Apps Mindmap
Testing Legacy Apps MindmapTesting Legacy Apps Mindmap
Testing Legacy Apps MindmapDawn Code
 
Testing Legacy Apps
Testing Legacy AppsTesting Legacy Apps
Testing Legacy AppsDawn Code
 

More from Dawn Code (16)

A Sampling of Tools
A Sampling of ToolsA Sampling of Tools
A Sampling of Tools
 
Testing in the Wild
Testing in the WildTesting in the Wild
Testing in the Wild
 
Fitting Organizational Structure
Fitting Organizational StructureFitting Organizational Structure
Fitting Organizational Structure
 
Pair development
Pair developmentPair development
Pair development
 
Remote Dev/Test Pairing
Remote Dev/Test PairingRemote Dev/Test Pairing
Remote Dev/Test Pairing
 
Crowdsource Your Career
Crowdsource Your CareerCrowdsource Your Career
Crowdsource Your Career
 
How Low Can Your Tests Go
How Low Can Your Tests GoHow Low Can Your Tests Go
How Low Can Your Tests Go
 
Writing Maintainable Test Automation
Writing Maintainable Test AutomationWriting Maintainable Test Automation
Writing Maintainable Test Automation
 
Exploratory testing part 2
Exploratory testing part 2Exploratory testing part 2
Exploratory testing part 2
 
Exploratory testing part 1
Exploratory testing part 1Exploratory testing part 1
Exploratory testing part 1
 
Exploratory testing part 3
Exploratory testing part 3Exploratory testing part 3
Exploratory testing part 3
 
Agile and Exploratory Testing Jeopardy
Agile and Exploratory Testing JeopardyAgile and Exploratory Testing Jeopardy
Agile and Exploratory Testing Jeopardy
 
Pair Development from the Trenches
Pair Development from the TrenchesPair Development from the Trenches
Pair Development from the Trenches
 
Page objects: the good, the bad, the ugly
Page objects: the good, the bad, the uglyPage objects: the good, the bad, the ugly
Page objects: the good, the bad, the ugly
 
Testing Legacy Apps Mindmap
Testing Legacy Apps MindmapTesting Legacy Apps Mindmap
Testing Legacy Apps Mindmap
 
Testing Legacy Apps
Testing Legacy AppsTesting Legacy Apps
Testing Legacy Apps
 

Recently uploaded

Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxnada99848
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 

Recently uploaded (20)

Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptx
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 

Executable Specifications with FitNesse and Selenium

  • 1. Executable Specifications with FitNesse and Selenium Dawn Cannan http://passionatetester.com @dckismet on Twitter
  • 2. Who is this lady? http://passionatetester.com • Currently Tester at 42 Lines • Software testing specialist for 10 years • One-time developer • Test team builder • Maintainer on .net Selenesse open source project
  • 3. What do all of these words mean? • Executable Specifications? • FitNesse? • Selenium?
  • 4. The Test Automation Pyramid Created by Brian Marick, used in the book Agile Testing, by Lisa Crispin and Janet Gregory
  • 5. Ever seen this before? • What’s developed isn’t what the customer wanted • Buggy product, lots of rework • Some team members lack domain knowledge, don’t understand context of features • Business team doesn’t trust development team to complete tasks well/ on time
  • 6. Business vs Dev Cage Match That’s not what I asked for! SCOPE CREEP!
  • 7. How can we minimize this? • Start by getting the right people together: usually, a customer/business person, developer, tester • Talk through the details, come to a common vocabulary • Specify as many examples as make sense
  • 8. Benefits of this approach When examples are written in a way that can be run as tests: •Miscommunications due to “playing telephone” are minimized •Everyone is on the same page very early •Bugs are prevented
  • 9. Test Automation Driving a browser with Selenium
  • 10. Gotchas in automation Test automation in the browser presents challenges: •Locating elements – using CSS Selectors •Synchronizing with the web server – Waiting for elements to appear •Maintaining over time – creating common actions
  • 11. Using the Wiki Defining Selenium tests in the FitNesse wiki
  • 12. FitNesse framework • Web page, accessible to all team members • Wiki markup is easy to learn • Plain text, can be checked in with source code • Executes tests and reports results back • Shows test execution history
  • 14. References • My blog: http://passionatetester.com • FitNesse: http://fitnesse.info • Selenium: http://seleniumhq.org or • Sauce RC: http://saucelabs.com/products/downloads • SeleNesse: http://github.com/marisaseal/selenesse • CSS Selectors: http://saucelabs.com/blog/index.php/2011/01/why- jquery-in-selenium-css-locators-is-the-way-to-go/