SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
SELENIUM: WHAT IS IT GOOD
          FOR?
        ABSOLUTELY SOMETHING!
            DALLAS DRUPAL DAYS
             SEPTEMBER 8, 2012
WHATCHA GONNA DO?
Selenium
   Selenium IDE: A comprehensive walkthrough of the
   misunderstood IDE.
   Store and Run Tests: A guide to Automated Testing at it's most
   basic level.
PHPUnit
   The Important Features: What we need to get Selenium working
   with PHPUnit.
   Translation from Selenium IDE: The first steps to using PHPUnit
   for managing and running your tests.
Hudson / Jenkins / Travis
  Continuous Integration: What does it mean to be continuously
  integrated?
BUT FIRST!
<SHAMELESS SELF PROMOTION>
        Allan Chappell
Webdeveloper / Testing Expert



    Drupal User: 368854
     @general_redneck
    GeneralRedneck.com
    </SHAMELESS SELF PROMOTION>
WHAT IS SELENIUM?
“Selenium automates browsers. That's it.”
SELENIUM
SELENIUM IDE

          Record Your Actions.
          Modify Your Targets.
          Fill In the Gaps With Tests.
          Store and Run Your Tests.
SELENIUM IDE
 RECORD YOUR ACTIONS.



Live Demo Time!
STORE TESTS
               WARNING: CONFLICTING INFORMATION!
  If you plan to move on to more advanced testing:
Separate different features into different Test Suites.

      If you plan to stick with what you got now:
   Combine all features into the same Test Suite.
STORE TESTS
           For both do:
Separate tests into logical test cases.
Share and reap the rewards!
RUN TESTS
Make a backup of the database.
(Check out backup and migrate )
Run the Tests!
Restore if needed.
<BLINK>


   CONGRATULATIONS!!!
YOU ARE READY TO MOVE TO THE NEXT LEVEL!
                 </BLINK>
WHERE DOES PHPUNIT COME IN?
PHPUnit allows you to make the process more automated!
PHPUNIT
        SELENIUM FEATURE OVERVIEW
You can run your old tests! (with massaging)
You can now perform repetitive tasks!
You can now chain running your tests to events!
TRANSLATION OF SELENIUM TESTS
                        There are 2 ways!
PHP Export Addon
Throwing your selenese test cases into a directory and telling
PHPUnit to run em.
<IMPERSONATE CLASS='AUDIENCE'>

GREAT... BUT HOW TO DO I USE IT?
               </IMPERSONATE>
Live Demo Time!
<BLINK>


CONGRATULATIONS!!!
YOU'VE LEVELED UP TWICE IN AN HOUR!
                          </BLINK>
        You should feel proud of yourself... No, Really!
THERE'S MORE?!? I THOUGHT I MADE THE TESTS
               AUTOMATED?
But you can do more with continuous integration provided by a
          platform such as Travis, Hudson, Jenkins.
CONTINUOUS INTEGRATION
                           OVERVIEW
Continuous Integration (CI) there to help your work's quality by:
       Taking repetitive manual tasks and automating them
       Doing these tasks more frequently
       And doing these task faster!
THINGS THAT NOW BECOME EASIER AND POSSIBLE
Code standard checking
Processing Tasks on events such as commits!
More information in an already formatted report!
Running Tests
TO COMPLETE THIS LEVEL YOU MUST...
Install a CI system: Hudson, Jenkins, and Travis are all free with
great documentation.
Build a job: Usually tell it when to run. For instance, on git commit to
github, or every night at midnight.
Tell it what to do: Anything commandline will run. PHPUnit is
commandline. Hudson, Travis, have Selenium built in!
<BLINK>


CONGRATULATIONS!!!
  YOU'VE MADE IT TO THE END!
                 </BLINK>
    But wait there's one more thing...
WHAT THIS MEANS IS THAT YOU NOW HAVE A
   CHOICE BASED ON THE FOLLOWING...
How Automated do you want to go.
What works for your team?
How many resources do you have to dedicate to automation?

   IN THE END, IT IS ALMOST ALWAYS BEST FOR YOUR PRODUCT TO GET TO THE LAST LEVEL.
QUESTIONS?

Contenu connexe

Tendances

Your time saving front end workflow
Your time saving front end workflowYour time saving front end workflow
Your time saving front end workflowIcalia Labs
 
Moving From a Selenium Grid to the Cloud - A Real Life Story
Moving From a Selenium Grid to the Cloud - A Real Life StoryMoving From a Selenium Grid to the Cloud - A Real Life Story
Moving From a Selenium Grid to the Cloud - A Real Life StorySauce Labs
 
Selenium and Sauce Labs
Selenium and Sauce LabsSelenium and Sauce Labs
Selenium and Sauce Labshugs
 
Continuous Integration: How I stopped guessing if that merge was bad
Continuous Integration: How I stopped guessing if that merge was badContinuous Integration: How I stopped guessing if that merge was bad
Continuous Integration: How I stopped guessing if that merge was badJoe Ferguson
 
Afterlife Tales: Troubleshooting containerized applications
Afterlife Tales: Troubleshooting containerized applicationsAfterlife Tales: Troubleshooting containerized applications
Afterlife Tales: Troubleshooting containerized applicationsAna-Maria Mihalceanu
 
PHP, AWS, and Sleep - Hampton Roads DevFest 2016
PHP, AWS, and Sleep - Hampton Roads DevFest 2016PHP, AWS, and Sleep - Hampton Roads DevFest 2016
PHP, AWS, and Sleep - Hampton Roads DevFest 2016Guillermo A. Fisher
 
Auditing Drupal Sites
Auditing Drupal SitesAuditing Drupal Sites
Auditing Drupal SitesExove
 
Selenium and Appium Training from Sauce Labs
Selenium and Appium Training from Sauce LabsSelenium and Appium Training from Sauce Labs
Selenium and Appium Training from Sauce LabsSauce Labs
 
How to Build and Maintain Quality Drupal Sites with Automated Testing
How to Build and Maintain Quality Drupal Sites with Automated TestingHow to Build and Maintain Quality Drupal Sites with Automated Testing
How to Build and Maintain Quality Drupal Sites with Automated TestingAcquia
 
WordPress London Developer Operations For Beginners
WordPress London Developer Operations For BeginnersWordPress London Developer Operations For Beginners
WordPress London Developer Operations For BeginnersStewart Ritchie
 
Troubleshooting containerized applications
Troubleshooting containerized applicationsTroubleshooting containerized applications
Troubleshooting containerized applicationsAna-Maria Mihalceanu
 
Upstate CSCI 450 PHP Chapters 5, 12, 13
Upstate CSCI 450 PHP Chapters 5, 12, 13Upstate CSCI 450 PHP Chapters 5, 12, 13
Upstate CSCI 450 PHP Chapters 5, 12, 13DanWooster1
 
Enterprise Workflows When You Aren't Enterprise
Enterprise Workflows When You Aren't EnterpriseEnterprise Workflows When You Aren't Enterprise
Enterprise Workflows When You Aren't EnterpriseChris Tankersley
 
Just kill it
Just kill itJust kill it
Just kill itpwhitdog
 
Bamboo - an introduction
Bamboo - an introductionBamboo - an introduction
Bamboo - an introductionSven Peters
 
Ansible top 10 - 2018
Ansible top 10 -  2018Ansible top 10 -  2018
Ansible top 10 - 2018Viresh Doshi
 

Tendances (20)

Your time saving front end workflow
Your time saving front end workflowYour time saving front end workflow
Your time saving front end workflow
 
Moving From a Selenium Grid to the Cloud - A Real Life Story
Moving From a Selenium Grid to the Cloud - A Real Life StoryMoving From a Selenium Grid to the Cloud - A Real Life Story
Moving From a Selenium Grid to the Cloud - A Real Life Story
 
Selenium and Sauce Labs
Selenium and Sauce LabsSelenium and Sauce Labs
Selenium and Sauce Labs
 
Helm your way with Kubernetes
Helm your way with Kubernetes Helm your way with Kubernetes
Helm your way with Kubernetes
 
Continuous Integration: How I stopped guessing if that merge was bad
Continuous Integration: How I stopped guessing if that merge was badContinuous Integration: How I stopped guessing if that merge was bad
Continuous Integration: How I stopped guessing if that merge was bad
 
Afterlife Tales: Troubleshooting containerized applications
Afterlife Tales: Troubleshooting containerized applicationsAfterlife Tales: Troubleshooting containerized applications
Afterlife Tales: Troubleshooting containerized applications
 
PHP, AWS, and Sleep - Hampton Roads DevFest 2016
PHP, AWS, and Sleep - Hampton Roads DevFest 2016PHP, AWS, and Sleep - Hampton Roads DevFest 2016
PHP, AWS, and Sleep - Hampton Roads DevFest 2016
 
Selenium
SeleniumSelenium
Selenium
 
Auditing Drupal Sites
Auditing Drupal SitesAuditing Drupal Sites
Auditing Drupal Sites
 
Selenium and Appium Training from Sauce Labs
Selenium and Appium Training from Sauce LabsSelenium and Appium Training from Sauce Labs
Selenium and Appium Training from Sauce Labs
 
How to Build and Maintain Quality Drupal Sites with Automated Testing
How to Build and Maintain Quality Drupal Sites with Automated TestingHow to Build and Maintain Quality Drupal Sites with Automated Testing
How to Build and Maintain Quality Drupal Sites with Automated Testing
 
WordPress London Developer Operations For Beginners
WordPress London Developer Operations For BeginnersWordPress London Developer Operations For Beginners
WordPress London Developer Operations For Beginners
 
Selenium IDE
Selenium IDESelenium IDE
Selenium IDE
 
Troubleshooting containerized applications
Troubleshooting containerized applicationsTroubleshooting containerized applications
Troubleshooting containerized applications
 
Upstate CSCI 450 PHP Chapters 5, 12, 13
Upstate CSCI 450 PHP Chapters 5, 12, 13Upstate CSCI 450 PHP Chapters 5, 12, 13
Upstate CSCI 450 PHP Chapters 5, 12, 13
 
Enterprise Workflows When You Aren't Enterprise
Enterprise Workflows When You Aren't EnterpriseEnterprise Workflows When You Aren't Enterprise
Enterprise Workflows When You Aren't Enterprise
 
Speed = $$$
Speed = $$$Speed = $$$
Speed = $$$
 
Just kill it
Just kill itJust kill it
Just kill it
 
Bamboo - an introduction
Bamboo - an introductionBamboo - an introduction
Bamboo - an introduction
 
Ansible top 10 - 2018
Ansible top 10 -  2018Ansible top 10 -  2018
Ansible top 10 - 2018
 

En vedette

Backlog, Deferred Maintenance and its use in Planning
Backlog, Deferred Maintenance and its use in PlanningBacklog, Deferred Maintenance and its use in Planning
Backlog, Deferred Maintenance and its use in PlanningSightlines
 
Enhancing the Value of Streets for Pedestrians, Bicyclists, and Motorists
Enhancing the Value of Streets for Pedestrians, Bicyclists, and MotoristsEnhancing the Value of Streets for Pedestrians, Bicyclists, and Motorists
Enhancing the Value of Streets for Pedestrians, Bicyclists, and MotoristsAndy Boenau
 
Take Control of Your Facilities: Explore the Tools for Aligning Space, Capita...
Take Control of Your Facilities: Explore the Tools for Aligning Space, Capita...Take Control of Your Facilities: Explore the Tools for Aligning Space, Capita...
Take Control of Your Facilities: Explore the Tools for Aligning Space, Capita...Sightlines
 
Pg connects bangalore re engagment advertising a dummies guide
Pg connects bangalore re engagment advertising a dummies guidePg connects bangalore re engagment advertising a dummies guide
Pg connects bangalore re engagment advertising a dummies guideFiksu
 
Kakamega County Audit Report 2014/2015
Kakamega County Audit Report 2014/2015Kakamega County Audit Report 2014/2015
Kakamega County Audit Report 2014/2015The Star Newspaper
 
Make your pitch perfect, using competitive and emotional intelligence - SEOZONE
Make your pitch perfect, using competitive and emotional intelligence - SEOZONEMake your pitch perfect, using competitive and emotional intelligence - SEOZONE
Make your pitch perfect, using competitive and emotional intelligence - SEOZONEAlexandraTachalova
 
JAWS FESTA TOKAIDO 2016
JAWS FESTA TOKAIDO 2016JAWS FESTA TOKAIDO 2016
JAWS FESTA TOKAIDO 2016陽平 山口
 
Lire Rythme, une nouvelle de Chaplin
Lire Rythme, une nouvelle de ChaplinLire Rythme, une nouvelle de Chaplin
Lire Rythme, une nouvelle de ChaplinLaila Methnani
 
Spartan challenge 10 11
Spartan challenge 10 11Spartan challenge 10 11
Spartan challenge 10 11Robjenna
 
Create content according to buyer's journey
Create content according to buyer's journeyCreate content according to buyer's journey
Create content according to buyer's journeyPengyuan Zhao
 
交點台中2016.3月 - 簡正強 - 青銀世代,翻轉農業
交點台中2016.3月 - 簡正強 - 青銀世代,翻轉農業 交點台中2016.3月 - 簡正強 - 青銀世代,翻轉農業
交點台中2016.3月 - 簡正強 - 青銀世代,翻轉農業 交點
 
14 Machine Learning Single Layer Perceptron
14 Machine Learning Single Layer Perceptron14 Machine Learning Single Layer Perceptron
14 Machine Learning Single Layer PerceptronAndres Mendez-Vazquez
 
Connected health
Connected healthConnected health
Connected healthDeloitte UK
 
TOP Growth Hacking acquisition Tools for 2017 - BY Akshay Gaur
TOP Growth Hacking acquisition Tools for 2017 - BY Akshay GaurTOP Growth Hacking acquisition Tools for 2017 - BY Akshay Gaur
TOP Growth Hacking acquisition Tools for 2017 - BY Akshay GaurAkshay Gaur
 

En vedette (17)

Backlog, Deferred Maintenance and its use in Planning
Backlog, Deferred Maintenance and its use in PlanningBacklog, Deferred Maintenance and its use in Planning
Backlog, Deferred Maintenance and its use in Planning
 
Enhancing the Value of Streets for Pedestrians, Bicyclists, and Motorists
Enhancing the Value of Streets for Pedestrians, Bicyclists, and MotoristsEnhancing the Value of Streets for Pedestrians, Bicyclists, and Motorists
Enhancing the Value of Streets for Pedestrians, Bicyclists, and Motorists
 
More than a score - Using Ratings and Reviews in Real Estate
More than a score - Using Ratings and Reviews in Real EstateMore than a score - Using Ratings and Reviews in Real Estate
More than a score - Using Ratings and Reviews in Real Estate
 
Take Control of Your Facilities: Explore the Tools for Aligning Space, Capita...
Take Control of Your Facilities: Explore the Tools for Aligning Space, Capita...Take Control of Your Facilities: Explore the Tools for Aligning Space, Capita...
Take Control of Your Facilities: Explore the Tools for Aligning Space, Capita...
 
Pg connects bangalore re engagment advertising a dummies guide
Pg connects bangalore re engagment advertising a dummies guidePg connects bangalore re engagment advertising a dummies guide
Pg connects bangalore re engagment advertising a dummies guide
 
Kakamega County Audit Report 2014/2015
Kakamega County Audit Report 2014/2015Kakamega County Audit Report 2014/2015
Kakamega County Audit Report 2014/2015
 
Make your pitch perfect, using competitive and emotional intelligence - SEOZONE
Make your pitch perfect, using competitive and emotional intelligence - SEOZONEMake your pitch perfect, using competitive and emotional intelligence - SEOZONE
Make your pitch perfect, using competitive and emotional intelligence - SEOZONE
 
Canvas
CanvasCanvas
Canvas
 
JAWS FESTA TOKAIDO 2016
JAWS FESTA TOKAIDO 2016JAWS FESTA TOKAIDO 2016
JAWS FESTA TOKAIDO 2016
 
Lire Rythme, une nouvelle de Chaplin
Lire Rythme, une nouvelle de ChaplinLire Rythme, une nouvelle de Chaplin
Lire Rythme, une nouvelle de Chaplin
 
Spartan challenge 10 11
Spartan challenge 10 11Spartan challenge 10 11
Spartan challenge 10 11
 
Create content according to buyer's journey
Create content according to buyer's journeyCreate content according to buyer's journey
Create content according to buyer's journey
 
交點台中2016.3月 - 簡正強 - 青銀世代,翻轉農業
交點台中2016.3月 - 簡正強 - 青銀世代,翻轉農業 交點台中2016.3月 - 簡正強 - 青銀世代,翻轉農業
交點台中2016.3月 - 簡正強 - 青銀世代,翻轉農業
 
14 Machine Learning Single Layer Perceptron
14 Machine Learning Single Layer Perceptron14 Machine Learning Single Layer Perceptron
14 Machine Learning Single Layer Perceptron
 
My favourite game
My favourite gameMy favourite game
My favourite game
 
Connected health
Connected healthConnected health
Connected health
 
TOP Growth Hacking acquisition Tools for 2017 - BY Akshay Gaur
TOP Growth Hacking acquisition Tools for 2017 - BY Akshay GaurTOP Growth Hacking acquisition Tools for 2017 - BY Akshay Gaur
TOP Growth Hacking acquisition Tools for 2017 - BY Akshay Gaur
 

Similaire à Selenium: What Is It Good For

Graceful Failure with Selenium and Continuous Integration
Graceful Failure with Selenium and Continuous IntegrationGraceful Failure with Selenium and Continuous Integration
Graceful Failure with Selenium and Continuous IntegrationChris B. France
 
Automating Perl deployments with Hudson
Automating Perl deployments with HudsonAutomating Perl deployments with Hudson
Automating Perl deployments with Hudsonnachbaur
 
Selenium testing IDE 101
Selenium testing IDE 101Selenium testing IDE 101
Selenium testing IDE 101Adam Culp
 
How Gozengo Implemented a Continuous Deployment Culture from Day One
How Gozengo Implemented a Continuous Deployment Culture from Day OneHow Gozengo Implemented a Continuous Deployment Culture from Day One
How Gozengo Implemented a Continuous Deployment Culture from Day OneSauce Labs
 
Gozengo sauce presentation
Gozengo sauce presentationGozengo sauce presentation
Gozengo sauce presentationDaniel Straus
 
Code Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application MigrationsCode Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application MigrationsDana Luther
 
Jenkins - Automating Yourself Out Of A Job (One That You Don't Want)
Jenkins - Automating Yourself Out Of A Job (One That You Don't Want)Jenkins - Automating Yourself Out Of A Job (One That You Don't Want)
Jenkins - Automating Yourself Out Of A Job (One That You Don't Want)lloydbenson
 
Getting to push_button_deploys
Getting to push_button_deploysGetting to push_button_deploys
Getting to push_button_deploysChristian Mague
 
Automated Web Testing With Selenium
Automated Web Testing With SeleniumAutomated Web Testing With Selenium
Automated Web Testing With SeleniumJodie Miners
 
Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...
Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...
Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...Edureka!
 
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...Moataz Nabil
 
Nantes Jug 2016 Eclipse Che: The Next-Gen Eclipse IDE
Nantes Jug 2016 Eclipse Che: The Next-Gen Eclipse IDENantes Jug 2016 Eclipse Che: The Next-Gen Eclipse IDE
Nantes Jug 2016 Eclipse Che: The Next-Gen Eclipse IDEFlorent BENOIT
 
Enterprise PHP (PHP London Conference 2008)
Enterprise PHP (PHP London Conference 2008)Enterprise PHP (PHP London Conference 2008)
Enterprise PHP (PHP London Conference 2008)Ivo Jansch
 
30 days or less: New Features to Production
30 days or less: New Features to Production30 days or less: New Features to Production
30 days or less: New Features to ProductionKarthik Gaekwad
 
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsTYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsMichael Lihs
 
Improving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester TrainingImproving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester TrainingAnna Russo
 
Automated UI testing. Selenium. DrupalCamp Kyiv 2011
Automated UI testing. Selenium. DrupalCamp Kyiv 2011Automated UI testing. Selenium. DrupalCamp Kyiv 2011
Automated UI testing. Selenium. DrupalCamp Kyiv 2011Yuriy Gerasimov
 
Productive Programmer - Using IDE effectively and various small practices to ...
Productive Programmer - Using IDE effectively and various small practices to ...Productive Programmer - Using IDE effectively and various small practices to ...
Productive Programmer - Using IDE effectively and various small practices to ...Bhavin Javia
 

Similaire à Selenium: What Is It Good For (20)

Selenium IDE
Selenium IDESelenium IDE
Selenium IDE
 
Graceful Failure with Selenium and Continuous Integration
Graceful Failure with Selenium and Continuous IntegrationGraceful Failure with Selenium and Continuous Integration
Graceful Failure with Selenium and Continuous Integration
 
Automating Perl deployments with Hudson
Automating Perl deployments with HudsonAutomating Perl deployments with Hudson
Automating Perl deployments with Hudson
 
Selenium testing IDE 101
Selenium testing IDE 101Selenium testing IDE 101
Selenium testing IDE 101
 
How Gozengo Implemented a Continuous Deployment Culture from Day One
How Gozengo Implemented a Continuous Deployment Culture from Day OneHow Gozengo Implemented a Continuous Deployment Culture from Day One
How Gozengo Implemented a Continuous Deployment Culture from Day One
 
Gozengo sauce presentation
Gozengo sauce presentationGozengo sauce presentation
Gozengo sauce presentation
 
Code Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application MigrationsCode Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application Migrations
 
Jenkins - Automating Yourself Out Of A Job (One That You Don't Want)
Jenkins - Automating Yourself Out Of A Job (One That You Don't Want)Jenkins - Automating Yourself Out Of A Job (One That You Don't Want)
Jenkins - Automating Yourself Out Of A Job (One That You Don't Want)
 
Getting to push_button_deploys
Getting to push_button_deploysGetting to push_button_deploys
Getting to push_button_deploys
 
Automated Web Testing With Selenium
Automated Web Testing With SeleniumAutomated Web Testing With Selenium
Automated Web Testing With Selenium
 
Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...
Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...
Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...
 
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
 
Nantes Jug 2016 Eclipse Che: The Next-Gen Eclipse IDE
Nantes Jug 2016 Eclipse Che: The Next-Gen Eclipse IDENantes Jug 2016 Eclipse Che: The Next-Gen Eclipse IDE
Nantes Jug 2016 Eclipse Che: The Next-Gen Eclipse IDE
 
Enterprise PHP (PHP London Conference 2008)
Enterprise PHP (PHP London Conference 2008)Enterprise PHP (PHP London Conference 2008)
Enterprise PHP (PHP London Conference 2008)
 
30 days or less: New Features to Production
30 days or less: New Features to Production30 days or less: New Features to Production
30 days or less: New Features to Production
 
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsTYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
 
Improving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester TrainingImproving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester Training
 
Automated UI testing. Selenium. DrupalCamp Kyiv 2011
Automated UI testing. Selenium. DrupalCamp Kyiv 2011Automated UI testing. Selenium. DrupalCamp Kyiv 2011
Automated UI testing. Selenium. DrupalCamp Kyiv 2011
 
Dev ops
Dev opsDev ops
Dev ops
 
Productive Programmer - Using IDE effectively and various small practices to ...
Productive Programmer - Using IDE effectively and various small practices to ...Productive Programmer - Using IDE effectively and various small practices to ...
Productive Programmer - Using IDE effectively and various small practices to ...
 

Dernier

Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024D Cloud Solutions
 
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdfJamie (Taka) Wang
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfinfogdgmi
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1DianaGray10
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IES VE
 
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial DataCloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial DataSafe Software
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesDavid Newbury
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...Aggregage
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopBachir Benyammi
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfAijun Zhang
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.YounusS2
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPathCommunity
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxGDSC PJATK
 
Introduction to Quantum Computing
Introduction to Quantum ComputingIntroduction to Quantum Computing
Introduction to Quantum ComputingGDSC PJATK
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 
Babel Compiler - Transforming JavaScript for All Browsers.pptx
Babel Compiler - Transforming JavaScript for All Browsers.pptxBabel Compiler - Transforming JavaScript for All Browsers.pptx
Babel Compiler - Transforming JavaScript for All Browsers.pptxYounusS2
 

Dernier (20)

Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
 
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdf
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
 
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial DataCloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond Ontologies
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 Workshop
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdf
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptx
 
Introduction to Quantum Computing
Introduction to Quantum ComputingIntroduction to Quantum Computing
Introduction to Quantum Computing
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 
Babel Compiler - Transforming JavaScript for All Browsers.pptx
Babel Compiler - Transforming JavaScript for All Browsers.pptxBabel Compiler - Transforming JavaScript for All Browsers.pptx
Babel Compiler - Transforming JavaScript for All Browsers.pptx
 

Selenium: What Is It Good For

  • 1. SELENIUM: WHAT IS IT GOOD FOR? ABSOLUTELY SOMETHING! DALLAS DRUPAL DAYS SEPTEMBER 8, 2012
  • 2. WHATCHA GONNA DO? Selenium Selenium IDE: A comprehensive walkthrough of the misunderstood IDE. Store and Run Tests: A guide to Automated Testing at it's most basic level. PHPUnit The Important Features: What we need to get Selenium working with PHPUnit. Translation from Selenium IDE: The first steps to using PHPUnit for managing and running your tests.
  • 3. Hudson / Jenkins / Travis Continuous Integration: What does it mean to be continuously integrated?
  • 5. <SHAMELESS SELF PROMOTION> Allan Chappell Webdeveloper / Testing Expert Drupal User: 368854 @general_redneck GeneralRedneck.com </SHAMELESS SELF PROMOTION>
  • 6. WHAT IS SELENIUM? “Selenium automates browsers. That's it.”
  • 7. SELENIUM SELENIUM IDE Record Your Actions. Modify Your Targets. Fill In the Gaps With Tests. Store and Run Your Tests.
  • 8. SELENIUM IDE RECORD YOUR ACTIONS. Live Demo Time!
  • 9. STORE TESTS WARNING: CONFLICTING INFORMATION! If you plan to move on to more advanced testing: Separate different features into different Test Suites. If you plan to stick with what you got now: Combine all features into the same Test Suite.
  • 10. STORE TESTS For both do: Separate tests into logical test cases. Share and reap the rewards!
  • 11. RUN TESTS Make a backup of the database. (Check out backup and migrate ) Run the Tests! Restore if needed.
  • 12. <BLINK> CONGRATULATIONS!!! YOU ARE READY TO MOVE TO THE NEXT LEVEL! </BLINK>
  • 13. WHERE DOES PHPUNIT COME IN? PHPUnit allows you to make the process more automated!
  • 14. PHPUNIT SELENIUM FEATURE OVERVIEW You can run your old tests! (with massaging) You can now perform repetitive tasks! You can now chain running your tests to events!
  • 15. TRANSLATION OF SELENIUM TESTS There are 2 ways! PHP Export Addon Throwing your selenese test cases into a directory and telling PHPUnit to run em.
  • 16. <IMPERSONATE CLASS='AUDIENCE'> GREAT... BUT HOW TO DO I USE IT? </IMPERSONATE>
  • 18. <BLINK> CONGRATULATIONS!!! YOU'VE LEVELED UP TWICE IN AN HOUR! </BLINK> You should feel proud of yourself... No, Really!
  • 19. THERE'S MORE?!? I THOUGHT I MADE THE TESTS AUTOMATED? But you can do more with continuous integration provided by a platform such as Travis, Hudson, Jenkins.
  • 20. CONTINUOUS INTEGRATION OVERVIEW Continuous Integration (CI) there to help your work's quality by: Taking repetitive manual tasks and automating them Doing these tasks more frequently And doing these task faster!
  • 21. THINGS THAT NOW BECOME EASIER AND POSSIBLE Code standard checking Processing Tasks on events such as commits! More information in an already formatted report! Running Tests
  • 22. TO COMPLETE THIS LEVEL YOU MUST... Install a CI system: Hudson, Jenkins, and Travis are all free with great documentation. Build a job: Usually tell it when to run. For instance, on git commit to github, or every night at midnight. Tell it what to do: Anything commandline will run. PHPUnit is commandline. Hudson, Travis, have Selenium built in!
  • 23. <BLINK> CONGRATULATIONS!!! YOU'VE MADE IT TO THE END! </BLINK> But wait there's one more thing...
  • 24. WHAT THIS MEANS IS THAT YOU NOW HAVE A CHOICE BASED ON THE FOLLOWING... How Automated do you want to go. What works for your team? How many resources do you have to dedicate to automation? IN THE END, IT IS ALMOST ALWAYS BEST FOR YOUR PRODUCT TO GET TO THE LAST LEVEL.