SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Headless BDD & Responsive Test
Automation
Shashikant Jagtap
Twitter: @Shashikant86
Blogs: http://shashikantjagtap.net
Topics
 How BDD Tools Work
 Headless Drivers, BDD and Benefits
 Behat+Zombie &
Cucumber+Poltergeist
 Demo
Cucumber+Capybara+Poltergeist
 Demo
Behat+Mink+Zombie+PhantomJS
 Responsive Automation
BDD Tools
 Popular BDD Tools Cucumber, Behat
 Web Acceptance Testing Frameworks
Capybara, Mink
 Drivers Selenium, Watir, PhantomJS,
Zombie
Benefits of using Headless Drivers
 Drivers with no reals Browsers
PhantomJS, Zombie
 Fast
 No XVFB, VNC on Linux
 Screenshots and JS Error Detection
 Debugging
Zombie
 NodeJS
 Npm
 Zombie
$ brew install node
$ npm install npm
PhantomJS
 Headless Browser with full JavaScript
Support
$ brew install phantomjs
$ phantomjs your/awesome.js
Setting up Headless Cucumber
 Cucumber + Capybara + Poltergiest
 GitHub :
https://github.com/teampoltergeist/polt
ergeist
 Demo on GitHub:
https://github.com/Shashikant86/Poltergeis
 Blog:
http://shashikantjagtap.net/cucumber-
capybara-poltergeist-rockstar-bdd-
What's There?
 Gemfile
 require 'capybara/poltergeist'
 Register
Capybara.register_driver :poltergeist do |app|
options = {
:js_errors => t rue,
}
Capybara::Poltergeist::Driver.new(app, options)
end
What You Can Do?
 Detect JS Error
 Capture Network Traffic
 Response Headers
 Capture Screenshot
 Play With Cookies
 Responsive Automation
Responsive Test Automation
 Define ViewPort
window_sizes = {
       :'320' => { :width => 320, :height => 480 },
     :'1026' => { :width => 1026, :height => 1200 },
       }
 Capybara.current_session.driver.resize(width, height)
Setting up Headless Behat
 Behat + Mink + Zombie
 Zombie On GitHub
https://github.com/assaf/zombie
 Behat + Mink + Zombie Demo on GitHub
https://github.com/Shashikant86/Behat-Zomb
 Blog
http://shashikantjagtap.net/using-zombie-
js-driver-with-behats-minkextension/
What's There?
 Composer.json
 Package.json
 "behat/mink-zombie-driver": "*@dev",
 Npm
 node_modules
What You Can Do?
 Make Behat Scenarioes SuperFast
 Response Headers
 Cookies
 Screenshot ? Network Traffic ?
 Stuff Coming Soon
Questions?
THANK YOU

Weitere ähnliche Inhalte

Was ist angesagt?

Rapidly scaffold your frontend with yeoman
Rapidly scaffold your frontend with yeomanRapidly scaffold your frontend with yeoman
Rapidly scaffold your frontend with yeoman
Simon Waibl
 

Was ist angesagt? (20)

Testing Angular Applications - Jfokus 2017
Testing Angular Applications - Jfokus 2017Testing Angular Applications - Jfokus 2017
Testing Angular Applications - Jfokus 2017
 
Intro to Puppeteer
Intro to PuppeteerIntro to Puppeteer
Intro to Puppeteer
 
Front-end Automated Testing
Front-end Automated TestingFront-end Automated Testing
Front-end Automated Testing
 
Building a PWA with Ionic, Angular, and Spring Boot - GeeCON 2017
Building a PWA with Ionic, Angular, and Spring Boot - GeeCON 2017Building a PWA with Ionic, Angular, and Spring Boot - GeeCON 2017
Building a PWA with Ionic, Angular, and Spring Boot - GeeCON 2017
 
Yeoman
YeomanYeoman
Yeoman
 
Put an end to regression with codeception testing
Put an end to regression with codeception testingPut an end to regression with codeception testing
Put an end to regression with codeception testing
 
Composer at Scale, Release and Dependency Management
Composer at Scale, Release and Dependency ManagementComposer at Scale, Release and Dependency Management
Composer at Scale, Release and Dependency Management
 
Front end workflow with yeoman
Front end workflow with yeomanFront end workflow with yeoman
Front end workflow with yeoman
 
Cloud Native PWAs (progressive web apps with Spring Boot and Angular) - DevNe...
Cloud Native PWAs (progressive web apps with Spring Boot and Angular) - DevNe...Cloud Native PWAs (progressive web apps with Spring Boot and Angular) - DevNe...
Cloud Native PWAs (progressive web apps with Spring Boot and Angular) - DevNe...
 
Mobile automation using selenium cucumber & appium
Mobile automation using selenium cucumber & appiumMobile automation using selenium cucumber & appium
Mobile automation using selenium cucumber & appium
 
Building Cloud Native Progressive Web Apps with Angular and Spring Boot - Dev...
Building Cloud Native Progressive Web Apps with Angular and Spring Boot - Dev...Building Cloud Native Progressive Web Apps with Angular and Spring Boot - Dev...
Building Cloud Native Progressive Web Apps with Angular and Spring Boot - Dev...
 
Cloud Native Progressive Web Applications - Denver JUG 2016
Cloud Native Progressive Web Applications - Denver JUG 2016Cloud Native Progressive Web Applications - Denver JUG 2016
Cloud Native Progressive Web Applications - Denver JUG 2016
 
Testing Angular 2 Applications - Rich Web 2016
Testing Angular 2 Applications - Rich Web 2016Testing Angular 2 Applications - Rich Web 2016
Testing Angular 2 Applications - Rich Web 2016
 
Midwest PHP 2017 DevOps For Small team
Midwest PHP 2017 DevOps For Small teamMidwest PHP 2017 DevOps For Small team
Midwest PHP 2017 DevOps For Small team
 
Node.js meets jenkins
Node.js meets jenkinsNode.js meets jenkins
Node.js meets jenkins
 
Developing PWAs and Mobile Apps with Ionic, Angular, and JHipster - Devoxx Mo...
Developing PWAs and Mobile Apps with Ionic, Angular, and JHipster - Devoxx Mo...Developing PWAs and Mobile Apps with Ionic, Angular, and JHipster - Devoxx Mo...
Developing PWAs and Mobile Apps with Ionic, Angular, and JHipster - Devoxx Mo...
 
Rapidly scaffold your frontend with yeoman
Rapidly scaffold your frontend with yeomanRapidly scaffold your frontend with yeoman
Rapidly scaffold your frontend with yeoman
 
html5 & phonegap
html5 & phonegaphtml5 & phonegap
html5 & phonegap
 
React Native Masterclass
React Native MasterclassReact Native Masterclass
React Native Masterclass
 
Webpack and angularjs
Webpack and angularjsWebpack and angularjs
Webpack and angularjs
 

Andere mochten auch

Exactpro Systems for KSTU Students in Kostroma
Exactpro Systems for KSTU Students in KostromaExactpro Systems for KSTU Students in Kostroma
Exactpro Systems for KSTU Students in Kostroma
Iosif Itkin
 
React Nativeはクロスプラットフォームモバイルアプリ開発の夢を見るか #DroidKaigi
React Nativeはクロスプラットフォームモバイルアプリ開発の夢を見るか #DroidKaigiReact Nativeはクロスプラットフォームモバイルアプリ開発の夢を見るか #DroidKaigi
React Nativeはクロスプラットフォームモバイルアプリ開発の夢を見るか #DroidKaigi
Yukiya Nakagawa
 

Andere mochten auch (7)

ATDD with Behat and Selenium (LDNSE6)
ATDD with Behat and Selenium (LDNSE6)ATDD with Behat and Selenium (LDNSE6)
ATDD with Behat and Selenium (LDNSE6)
 
Dockerizing BDD : Ruby-Cucumber Example
Dockerizing BDD : Ruby-Cucumber ExampleDockerizing BDD : Ruby-Cucumber Example
Dockerizing BDD : Ruby-Cucumber Example
 
Headless Apps on BlackBerry 10.2.1
Headless Apps on BlackBerry 10.2.1Headless Apps on BlackBerry 10.2.1
Headless Apps on BlackBerry 10.2.1
 
Exactpro Systems for KSTU Students in Kostroma
Exactpro Systems for KSTU Students in KostromaExactpro Systems for KSTU Students in Kostroma
Exactpro Systems for KSTU Students in Kostroma
 
Behavior Driven Development Pros and Cons
Behavior Driven Development Pros and ConsBehavior Driven Development Pros and Cons
Behavior Driven Development Pros and Cons
 
Appium: Automation for Mobile Apps
Appium: Automation for Mobile AppsAppium: Automation for Mobile Apps
Appium: Automation for Mobile Apps
 
React Nativeはクロスプラットフォームモバイルアプリ開発の夢を見るか #DroidKaigi
React Nativeはクロスプラットフォームモバイルアプリ開発の夢を見るか #DroidKaigiReact Nativeはクロスプラットフォームモバイルアプリ開発の夢を見るか #DroidKaigi
React Nativeはクロスプラットフォームモバイルアプリ開発の夢を見るか #DroidKaigi
 

Ähnlich wie Headless BDD & Responsive Test Automation

Ähnlich wie Headless BDD & Responsive Test Automation (20)

Building your own RC Car with Raspberry Pi
Building your own RC Car with Raspberry PiBuilding your own RC Car with Raspberry Pi
Building your own RC Car with Raspberry Pi
 
Startup and Rapid web development
Startup and Rapid web developmentStartup and Rapid web development
Startup and Rapid web development
 
Git hub videowhisper-php-webcam-video-conference_ video conference_ web bas...
Git hub   videowhisper-php-webcam-video-conference_ video conference_ web bas...Git hub   videowhisper-php-webcam-video-conference_ video conference_ web bas...
Git hub videowhisper-php-webcam-video-conference_ video conference_ web bas...
 
Agile android
Agile androidAgile android
Agile android
 
Panther loves Symfony apps
Panther loves Symfony appsPanther loves Symfony apps
Panther loves Symfony apps
 
aautoPilot
aautoPilotaautoPilot
aautoPilot
 
우리가 모르는 노드로 할 수 있는 몇가지
우리가 모르는 노드로 할 수 있는 몇가지우리가 모르는 노드로 할 수 있는 몇가지
우리가 모르는 노드로 할 수 있는 몇가지
 
Ionic - Revolutionizing Hybrid Mobile Application Development
Ionic - Revolutionizing Hybrid Mobile Application DevelopmentIonic - Revolutionizing Hybrid Mobile Application Development
Ionic - Revolutionizing Hybrid Mobile Application Development
 
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017
 
Magento, beginning to end
Magento, beginning to endMagento, beginning to end
Magento, beginning to end
 
[H3 2012] 우리가 모르는 Node.js로 할 수 있는 몇가지
[H3 2012] 우리가 모르는 Node.js로 할 수 있는 몇가지[H3 2012] 우리가 모르는 Node.js로 할 수 있는 몇가지
[H3 2012] 우리가 모르는 Node.js로 할 수 있는 몇가지
 
Full stack development in Go
Full stack development in GoFull stack development in Go
Full stack development in Go
 
Developers meetup sep-2017
Developers meetup sep-2017Developers meetup sep-2017
Developers meetup sep-2017
 
Librerías Opensoure de Square
Librerías Opensoure de Square Librerías Opensoure de Square
Librerías Opensoure de Square
 
IoT Tech Day Coding Mojo slides. Utrecht, April 2016
IoT Tech Day Coding Mojo slides.  Utrecht, April 2016IoT Tech Day Coding Mojo slides.  Utrecht, April 2016
IoT Tech Day Coding Mojo slides. Utrecht, April 2016
 
How To Be A Hacker
How To Be A HackerHow To Be A Hacker
How To Be A Hacker
 
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
 
Own the build
Own the buildOwn the build
Own the build
 
Tech Tools: Simplifying Life for the Busy Research Librarian - Supplementary ...
Tech Tools: Simplifying Life for the Busy Research Librarian - Supplementary ...Tech Tools: Simplifying Life for the Busy Research Librarian - Supplementary ...
Tech Tools: Simplifying Life for the Busy Research Librarian - Supplementary ...
 
Ultimate Productivity Tools
Ultimate Productivity ToolsUltimate Productivity Tools
Ultimate Productivity Tools
 

Mehr von Shashikant Jagtap

Mehr von Shashikant Jagtap (9)

NSTC2019: Choosing CI Friendly Mobile Automation Framework
NSTC2019: Choosing CI Friendly Mobile Automation Framework NSTC2019: Choosing CI Friendly Mobile Automation Framework
NSTC2019: Choosing CI Friendly Mobile Automation Framework
 
SauceCon19: Fashionable XCUITest for iOS App
SauceCon19: Fashionable XCUITest for iOS App SauceCon19: Fashionable XCUITest for iOS App
SauceCon19: Fashionable XCUITest for iOS App
 
Full Stack Flutter Testing
Full Stack Flutter Testing Full Stack Flutter Testing
Full Stack Flutter Testing
 
XCUITest Introduction: Test Automation University
XCUITest Introduction: Test Automation University XCUITest Introduction: Test Automation University
XCUITest Introduction: Test Automation University
 
iOSDevUK Conference- DevOps for iOS Apps
iOSDevUK Conference- DevOps for iOS AppsiOSDevUK Conference- DevOps for iOS Apps
iOSDevUK Conference- DevOps for iOS Apps
 
Vapor london March 2018
Vapor london March 2018Vapor london March 2018
Vapor london March 2018
 
Provisioning iOS CI Server with Ansible
Provisioning iOS CI Server with AnsibleProvisioning iOS CI Server with Ansible
Provisioning iOS CI Server with Ansible
 
BDD with Behat Selenium, Sahi and Sauce
BDD with Behat Selenium, Sahi and SauceBDD with Behat Selenium, Sahi and Sauce
BDD with Behat Selenium, Sahi and Sauce
 
Test Framework for Acne Selenium+Sahi
Test Framework for Acne Selenium+SahiTest Framework for Acne Selenium+Sahi
Test Framework for Acne Selenium+Sahi
 

Kürzlich hochgeladen

Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxChiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
raffaeleoman
 
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
amilabibi1
 
Uncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac FolorunsoUncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac Folorunso
Kayode Fayemi
 
If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New Nigeria
Kayode Fayemi
 

Kürzlich hochgeladen (18)

Aesthetic Colaba Mumbai Cst Call girls 📞 7738631006 Grant road Call Girls ❤️-...
Aesthetic Colaba Mumbai Cst Call girls 📞 7738631006 Grant road Call Girls ❤️-...Aesthetic Colaba Mumbai Cst Call girls 📞 7738631006 Grant road Call Girls ❤️-...
Aesthetic Colaba Mumbai Cst Call girls 📞 7738631006 Grant road Call Girls ❤️-...
 
Dreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video TreatmentDreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video Treatment
 
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxChiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
 
Sector 62, Noida Call girls :8448380779 Noida Escorts | 100% verified
Sector 62, Noida Call girls :8448380779 Noida Escorts | 100% verifiedSector 62, Noida Call girls :8448380779 Noida Escorts | 100% verified
Sector 62, Noida Call girls :8448380779 Noida Escorts | 100% verified
 
Busty Desi⚡Call Girls in Sector 51 Noida Escorts >༒8448380779 Escort Service-...
Busty Desi⚡Call Girls in Sector 51 Noida Escorts >༒8448380779 Escort Service-...Busty Desi⚡Call Girls in Sector 51 Noida Escorts >༒8448380779 Escort Service-...
Busty Desi⚡Call Girls in Sector 51 Noida Escorts >༒8448380779 Escort Service-...
 
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdfAWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
 
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
 
Uncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac FolorunsoUncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac Folorunso
 
Report Writing Webinar Training
Report Writing Webinar TrainingReport Writing Webinar Training
Report Writing Webinar Training
 
My Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle BaileyMy Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle Bailey
 
Dreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio IIIDreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio III
 
ICT role in 21st century education and it's challenges.pdf
ICT role in 21st century education and it's challenges.pdfICT role in 21st century education and it's challenges.pdf
ICT role in 21st century education and it's challenges.pdf
 
Digital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of DrupalDigital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of Drupal
 
Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510
 
Causes of poverty in France presentation.pptx
Causes of poverty in France presentation.pptxCauses of poverty in France presentation.pptx
Causes of poverty in France presentation.pptx
 
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdfThe workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
 
If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New Nigeria
 
lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.
 

Headless BDD & Responsive Test Automation

  • 1. Headless BDD & Responsive Test Automation Shashikant Jagtap Twitter: @Shashikant86 Blogs: http://shashikantjagtap.net
  • 2. Topics  How BDD Tools Work  Headless Drivers, BDD and Benefits  Behat+Zombie & Cucumber+Poltergeist  Demo Cucumber+Capybara+Poltergeist  Demo Behat+Mink+Zombie+PhantomJS  Responsive Automation
  • 3. BDD Tools  Popular BDD Tools Cucumber, Behat  Web Acceptance Testing Frameworks Capybara, Mink  Drivers Selenium, Watir, PhantomJS, Zombie
  • 4. Benefits of using Headless Drivers  Drivers with no reals Browsers PhantomJS, Zombie  Fast  No XVFB, VNC on Linux  Screenshots and JS Error Detection  Debugging
  • 5. Zombie  NodeJS  Npm  Zombie $ brew install node $ npm install npm
  • 6. PhantomJS  Headless Browser with full JavaScript Support $ brew install phantomjs $ phantomjs your/awesome.js
  • 7. Setting up Headless Cucumber  Cucumber + Capybara + Poltergiest  GitHub : https://github.com/teampoltergeist/polt ergeist  Demo on GitHub: https://github.com/Shashikant86/Poltergeis  Blog: http://shashikantjagtap.net/cucumber- capybara-poltergeist-rockstar-bdd-
  • 8. What's There?  Gemfile  require 'capybara/poltergeist'  Register Capybara.register_driver :poltergeist do |app| options = { :js_errors => t rue, } Capybara::Poltergeist::Driver.new(app, options) end
  • 9. What You Can Do?  Detect JS Error  Capture Network Traffic  Response Headers  Capture Screenshot  Play With Cookies  Responsive Automation
  • 10. Responsive Test Automation  Define ViewPort window_sizes = {        :'320' => { :width => 320, :height => 480 },      :'1026' => { :width => 1026, :height => 1200 },        }  Capybara.current_session.driver.resize(width, height)
  • 11. Setting up Headless Behat  Behat + Mink + Zombie  Zombie On GitHub https://github.com/assaf/zombie  Behat + Mink + Zombie Demo on GitHub https://github.com/Shashikant86/Behat-Zomb  Blog http://shashikantjagtap.net/using-zombie- js-driver-with-behats-minkextension/
  • 12. What's There?  Composer.json  Package.json  "behat/mink-zombie-driver": "*@dev",  Npm  node_modules
  • 13. What You Can Do?  Make Behat Scenarioes SuperFast  Response Headers  Cookies  Screenshot ? Network Traffic ?  Stuff Coming Soon