Adam Carmi (@carmiadam)
Co-Founder and VP R&D at Applitools
ADVANCED AUTOMATED
VISUAL TESTING WITH
SELENIUM
YOU CAN AND SHOULD
AUTOMATE YOUR
VISUAL TESTS!
Advanced automated visual testing with Selenium
AGENDA
 Why automated visual testing?
 Tools & Technology
 Where does it fit?
 Q & A
WHAT IS VISUAL TESTING?
A quality assurance activity aimed to verify that a Graphical
User Interface appears correctly to users
Advanced automated visual testing with Selenium
Advanced automated visual testing with Selenium
Advanced automated visual testing with Selenium
Advanced automated visual testing with Selenium
WHY AUTOMATE?
The test matrix is too big to cover manually
 Web browsers
 Devices
 Operating systems
 Screen resolutions
 Responsive design
 L10n
 3rd Party upgrades
WHY AUTOMATE?
Mobile apps quality is critical
 Harder to roll back changes
 Can’t push daily
 Updates take battery and data
 Higher quality bar
WHY AUTOMATE?
Release cycles keep getting shorter
AGENDA
 Why automated visual testing?
 Tools & Technology
 Where does it fit?
 Q & A
HOW DOES IT WORK?
Drive the AUT and take screenshots
Compare screenshots with baseline images
Report differences
Update the baseline
DEMOWebDriverCSS
HOW DOES IT WORK?
Drive the AUT and take screenshots
Compare screenshots with baseline images
Report differences
Update the baseline
Advanced automated visual testing with Selenium
Advanced automated visual testing with Selenium
Advanced automated visual testing with Selenium
Advanced automated visual testing with Selenium
Advanced automated visual testing with Selenium
Advanced automated visual testing with Selenium
Advanced automated visual testing with Selenium
AND MORE…
 1 pixel offsets in element positioning
 Dynamic content
 Moving elements
 Images of different size
 Performance
Advanced automated visual testing with Selenium
IMAGE COMPARISON
ENGINES
ImageMagick
 A powerful command line tool for image processing.
 Fuzzing is used to eliminate slight color differences
 An error ratio is usually used to determine a match
$ compare –metric AE –fuzz 5% img1.png img2.png diff.png
2246
THE JAVASCRIPT ENGINES
 Resemble.js
Pixel by pixel + error ratio + anti-aliasing
http://huddle.github.io/Resemble.js
 Blink-Diff
Pixel by pixel + error ratio + anti-aliasing + perceptual color distance
computation
https://github.com/yahoo/blink-diff
 Looks-Same
Pixel by pixel + perceptual color distance computation + ignore Caret
https://github.com/gemini-testing/looks-same
APPLITOOLS EYES
 Handles anti-aliasing, pixel offsets, color similarity, and image scaling
 Dynamic and moving content
 Compare images of different sizes
 No error ratio configuration required
 Validates full UI pages
 Fast!
 Supports layout / structure matching
DEMOVISUAL LAYOUT MATCHING
HOW DOES IT WORK?
Drive the AUT and take screenshots
Compare screenshots with baseline images
Report differences
Update the baseline
QUICK FEEDBACK TOOLS
MOTIVATION
 Get fast feedback on code changes
 Run tests locally in the background
SETUP
 Render screenshots with a headless
browser
 PhatomJS, SlimerJS
 Configuration file driven tests
CONS
 Partial coverage
 Chrome, IE?
 Old browser layout engine versions
 Limited navigation
VISUAL COVERAGE TOOLS
MOTIVATION
 Verify that the app / site looks right in
all real execution environments
 Test as many UI states as possible
 Execute many tests in parallel
SETUP
 Render screenshots using real browsers
on a variety of operating systems and
devices in parallel
 WebDriver, Grid
 Code driven tests
 WebDriver, DSLCONS
 Requires test infrastructure
 Implement and maintain test code
SELENIUM BASED TOOLS
CODE / SCRIPT
● Needle (Python WD)
● WebDriverCss (JS WebDriverIO)
● Gemini (JS DSL)
● Selenium Visual Diff (Java WD)
● VisualCeption (PHP CodeCeption)
● Pix-Diff (JS Protractor)
● Shoov (JS WebDriverIO)
● Vizregress (.NET WD)
● Rspec Page Regression (Capibara)
● Applitools Eyes (All WD + Appium)
● Fighting Layout Bugs (Java WebDriver)
● Huxley (Record Playback)
CONFIGURATION
● Viff
● CSS Visual Test
● GreenOnion
● Wraith-Selenium
HOW DOES IT WORK?
Drive the AUT and take screenshots
Compare screenshots with baseline images
Report differences
Update the baseline
REPORT DIFFERENCES
As files on the file system
WebDriverCSS
REPORT DIFFERENCES
As a gallery
Selenium Visual Diff
HOW DOES IT WORK?
Drive the AUT and take screenshots
Compare screenshots with baseline images
Report differences
Update the baseline
UPDATE THE BASELINE
Gemini
Advanced automated visual testing with Selenium
DEMOAUTOMATED MAINTENANCE
AGENDA
 Why automated visual testing?
 Tools & Technology
 Where does it fit?
 Q & A
WHERE DOES IT FIT?
• Component
s
• Code
review
• Developers
• Designers
• QA
Visual testing of frontend components by
frontend developers
WHERE DOES IT FIT?
• Pages
• Page
sections
• Developers
• Designers
• QA
• Others
Full or partial validation of application screens
A collaboration tool
WHERE DOES IT FIT?
• Staging vs.
Production
• Ops
• QA
Validate your staging deployment using your
production deployment as a baseline
WHERE DOES IT FIT?
• Monitoring
• Ops
• QA
No missing resources in production
No corruption due to 3rd party data
No corruption due to browser / OS upgrades
Adam Carmi (@carmiadam)
Co-Founder and VP R&D at Applitools
QUESTIONS?

More Related Content

PPTX
Advanced Automated Visual Testing
PPTX
Sauce Labs+Applitools - Automated Visual Testing in the Cloud
PPTX
Automated Visual Testing That Does Not Suck
PDF
Selenium conference, 2016
PPTX
Advanced Appium
PPTX
Selenium Based Visual Test Automation
PDF
Visual Automation Framework via Screenshot Comparison
PPTX
Selenium Camp 2016
Advanced Automated Visual Testing
Sauce Labs+Applitools - Automated Visual Testing in the Cloud
Automated Visual Testing That Does Not Suck
Selenium conference, 2016
Advanced Appium
Selenium Based Visual Test Automation
Visual Automation Framework via Screenshot Comparison
Selenium Camp 2016

What's hot (20)

PPT
PDF
What's New With Appium? From 1.0 to Now
PPT
Nakal think test_2015
PDF
Appium Mobile Test Automation like WebDriver
PDF
Android UI Testing with Appium
PPTX
Advanced Appium: SeleniumConf UK 2016
PDF
Selenium, Appium, and Robots!
PDF
Introduction To Appium With Robotframework
PDF
SeConf_Nov2016_London
PDF
Selenium Testing on Chrome - Google DevFest Armenia 2015
PPTX
Wheat - Mobile functional test automation
PPTX
Appium overview
PPT
PDF
Improving Android app testing with Appium and Sauce Labs
PPTX
Appium solution
PPTX
The wild wild west of Selenium Capabilities
PDF
Advanced Appium Tips & Tricks with Jonathan Lipps
PDF
Testing on Mobile Devices with Location Services
PDF
Testing Native iOS Apps with Appium
PPTX
Cross Platform Appium Tests: How To
What's New With Appium? From 1.0 to Now
Nakal think test_2015
Appium Mobile Test Automation like WebDriver
Android UI Testing with Appium
Advanced Appium: SeleniumConf UK 2016
Selenium, Appium, and Robots!
Introduction To Appium With Robotframework
SeConf_Nov2016_London
Selenium Testing on Chrome - Google DevFest Armenia 2015
Wheat - Mobile functional test automation
Appium overview
Improving Android app testing with Appium and Sauce Labs
Appium solution
The wild wild west of Selenium Capabilities
Advanced Appium Tips & Tricks with Jonathan Lipps
Testing on Mobile Devices with Location Services
Testing Native iOS Apps with Appium
Cross Platform Appium Tests: How To
Ad

Viewers also liked (20)

PPTX
Brace yourself from automation death trap
PDF
Testing desktop apps with selenium
PPTX
Selenium for Jobseekers
PDF
Better Page Object Handling with Loadable Component Pattern
PPT
What you can do with WordPress Heartbeat API
PDF
Page Objects Done Right - selenium conference 2014
PPT
Automated Unit Testing
PPT
Automated testing 101
PPTX
Automated Testing & Auto Scaling your Apps with Microsoft & Open Source Techn...
PDF
Test Data - Food for your Test Automation Framework
PDF
Testing as a container
PPTX
How to level-up your Selenium tests with Visual Testing #SeleniumCamp
PPTX
Automated Testing Environment by Bugzilla, Testopia and Jenkins
PPTX
SeConf2015: Advanced Automated Visual Testing With Selenium
PDF
Continuous Automated Testing - Cast conference workshop august 2014
PPT
Automated Testing with Agile
PDF
Automated Testing for Embedded Software in C or C++
PDF
Selenium RC: Automated Testing of Modern Web Applications
PPT
Automated Regression Testing for Embedded Systems in Action
PDF
Agile Testing Framework - The Art of Automated Testing
Brace yourself from automation death trap
Testing desktop apps with selenium
Selenium for Jobseekers
Better Page Object Handling with Loadable Component Pattern
What you can do with WordPress Heartbeat API
Page Objects Done Right - selenium conference 2014
Automated Unit Testing
Automated testing 101
Automated Testing & Auto Scaling your Apps with Microsoft & Open Source Techn...
Test Data - Food for your Test Automation Framework
Testing as a container
How to level-up your Selenium tests with Visual Testing #SeleniumCamp
Automated Testing Environment by Bugzilla, Testopia and Jenkins
SeConf2015: Advanced Automated Visual Testing With Selenium
Continuous Automated Testing - Cast conference workshop august 2014
Automated Testing with Agile
Automated Testing for Embedded Software in C or C++
Selenium RC: Automated Testing of Modern Web Applications
Automated Regression Testing for Embedded Systems in Action
Agile Testing Framework - The Art of Automated Testing
Ad

Similar to Advanced automated visual testing with Selenium (20)

PPTX
Advanced Visual Test Automation with Selenium
PPTX
Automated Visual Testing That Doesn't Suck!
PDF
Adam carmi
PPTX
Selenium-based Visual Test Automation
PPTX
Introduction to automated visual testing
PPTX
Advanced Visual Test Automation With Selenium
PPTX
Colorful world-of-visual-automation-testing-latest
PPTX
Advanced Automated Visual Testing for Mobile Apps
PDF
Automated Visual Testing with Selenium & Applitools
PDF
Intro to Visual Test Automation with Applitools Eyes
PPTX
Visual regression with applitools eyes
PPTX
Visual regression testing
PPTX
7 automated visual testing tools for you
PDF
Visual Testing: Quality and Speed -- by GIl Tayar, Applitools
PDF
Advanced automated visual testing at selenium conf india 2020
PDF
Visual Regression Testing Using Selenium AShot: A Step-by-Step Approach
PDF
Advanced automated visual testing at DrupalCon Europe 2020
PDF
Leveraging Visual Testing with Your Functional Tests
PPTX
Automated UI Testing
PDF
Automated Visual Regression Testing by Dave Sadlon
Advanced Visual Test Automation with Selenium
Automated Visual Testing That Doesn't Suck!
Adam carmi
Selenium-based Visual Test Automation
Introduction to automated visual testing
Advanced Visual Test Automation With Selenium
Colorful world-of-visual-automation-testing-latest
Advanced Automated Visual Testing for Mobile Apps
Automated Visual Testing with Selenium & Applitools
Intro to Visual Test Automation with Applitools Eyes
Visual regression with applitools eyes
Visual regression testing
7 automated visual testing tools for you
Visual Testing: Quality and Speed -- by GIl Tayar, Applitools
Advanced automated visual testing at selenium conf india 2020
Visual Regression Testing Using Selenium AShot: A Step-by-Step Approach
Advanced automated visual testing at DrupalCon Europe 2020
Leveraging Visual Testing with Your Functional Tests
Automated UI Testing
Automated Visual Regression Testing by Dave Sadlon

More from adamcarmi (6)

PPTX
Building Universal Servers (On-prem meets Azure PAAS)
PPTX
Build mobile application that is easy to automate
PPTX
Advanced Cross-Browser Visual Testing with Applitools Eyes and HP LeanFT
PPTX
Selenium Automation at Incapsula
PDF
Jenkins & Selenium
PPTX
An Overview of Selenium
Building Universal Servers (On-prem meets Azure PAAS)
Build mobile application that is easy to automate
Advanced Cross-Browser Visual Testing with Applitools Eyes and HP LeanFT
Selenium Automation at Incapsula
Jenkins & Selenium
An Overview of Selenium

Recently uploaded (20)

PDF
The Dynamic Duo Transforming Financial Accounting Systems Through Modern Expe...
PDF
CCleaner 6.39.11548 Crack 2025 License Key
PDF
Microsoft Office 365 Crack Download Free
PDF
PDF-XChange Editor Plus 10.7.0.398.0 Crack Free Download Latest 2025
PDF
Visual explanation of Dijkstra's Algorithm using Python
PDF
novaPDF Pro 11.9.482 Crack + License Key [Latest 2025]
PDF
Introduction to Ragic - #1 No Code Tool For Digitalizing Your Business Proces...
PPTX
Python is a high-level, interpreted programming language
PDF
Multiverse AI Review 2025: Access All TOP AI Model-Versions!
PDF
AI Guide for Business Growth - Arna Softech
PPTX
Cybersecurity-and-Fraud-Protecting-Your-Digital-Life.pptx
DOCX
Modern SharePoint Intranet Templates That Boost Employee Engagement in 2025.docx
PPTX
HackYourBrain__UtrechtJUG__11092025.pptx
PDF
Workplace Software and Skills - OpenStax
PPTX
Download Adobe Photoshop Crack 2025 Free
PDF
EaseUS PDF Editor Pro 6.2.0.2 Crack with License Key 2025
PDF
AI-Powered Fuzz Testing: The Future of QA
PPTX
MLforCyber_MLDataSetsandFeatures_Presentation.pptx
PPTX
Full-Stack Developer Courses That Actually Land You Jobs
DOC
UTEP毕业证学历认证,宾夕法尼亚克拉里恩大学毕业证未毕业
The Dynamic Duo Transforming Financial Accounting Systems Through Modern Expe...
CCleaner 6.39.11548 Crack 2025 License Key
Microsoft Office 365 Crack Download Free
PDF-XChange Editor Plus 10.7.0.398.0 Crack Free Download Latest 2025
Visual explanation of Dijkstra's Algorithm using Python
novaPDF Pro 11.9.482 Crack + License Key [Latest 2025]
Introduction to Ragic - #1 No Code Tool For Digitalizing Your Business Proces...
Python is a high-level, interpreted programming language
Multiverse AI Review 2025: Access All TOP AI Model-Versions!
AI Guide for Business Growth - Arna Softech
Cybersecurity-and-Fraud-Protecting-Your-Digital-Life.pptx
Modern SharePoint Intranet Templates That Boost Employee Engagement in 2025.docx
HackYourBrain__UtrechtJUG__11092025.pptx
Workplace Software and Skills - OpenStax
Download Adobe Photoshop Crack 2025 Free
EaseUS PDF Editor Pro 6.2.0.2 Crack with License Key 2025
AI-Powered Fuzz Testing: The Future of QA
MLforCyber_MLDataSetsandFeatures_Presentation.pptx
Full-Stack Developer Courses That Actually Land You Jobs
UTEP毕业证学历认证,宾夕法尼亚克拉里恩大学毕业证未毕业

Advanced automated visual testing with Selenium

  • 1. Adam Carmi (@carmiadam) Co-Founder and VP R&D at Applitools ADVANCED AUTOMATED VISUAL TESTING WITH SELENIUM
  • 2. YOU CAN AND SHOULD AUTOMATE YOUR VISUAL TESTS!
  • 4. AGENDA  Why automated visual testing?  Tools & Technology  Where does it fit?  Q & A
  • 5. WHAT IS VISUAL TESTING? A quality assurance activity aimed to verify that a Graphical User Interface appears correctly to users
  • 10. WHY AUTOMATE? The test matrix is too big to cover manually  Web browsers  Devices  Operating systems  Screen resolutions  Responsive design  L10n  3rd Party upgrades
  • 11. WHY AUTOMATE? Mobile apps quality is critical  Harder to roll back changes  Can’t push daily  Updates take battery and data  Higher quality bar
  • 12. WHY AUTOMATE? Release cycles keep getting shorter
  • 13. AGENDA  Why automated visual testing?  Tools & Technology  Where does it fit?  Q & A
  • 14. HOW DOES IT WORK? Drive the AUT and take screenshots Compare screenshots with baseline images Report differences Update the baseline
  • 16. HOW DOES IT WORK? Drive the AUT and take screenshots Compare screenshots with baseline images Report differences Update the baseline
  • 24. AND MORE…  1 pixel offsets in element positioning  Dynamic content  Moving elements  Images of different size  Performance
  • 27. ImageMagick  A powerful command line tool for image processing.  Fuzzing is used to eliminate slight color differences  An error ratio is usually used to determine a match $ compare –metric AE –fuzz 5% img1.png img2.png diff.png 2246
  • 28. THE JAVASCRIPT ENGINES  Resemble.js Pixel by pixel + error ratio + anti-aliasing http://huddle.github.io/Resemble.js  Blink-Diff Pixel by pixel + error ratio + anti-aliasing + perceptual color distance computation https://github.com/yahoo/blink-diff  Looks-Same Pixel by pixel + perceptual color distance computation + ignore Caret https://github.com/gemini-testing/looks-same
  • 29. APPLITOOLS EYES  Handles anti-aliasing, pixel offsets, color similarity, and image scaling  Dynamic and moving content  Compare images of different sizes  No error ratio configuration required  Validates full UI pages  Fast!  Supports layout / structure matching
  • 31. HOW DOES IT WORK? Drive the AUT and take screenshots Compare screenshots with baseline images Report differences Update the baseline
  • 32. QUICK FEEDBACK TOOLS MOTIVATION  Get fast feedback on code changes  Run tests locally in the background SETUP  Render screenshots with a headless browser  PhatomJS, SlimerJS  Configuration file driven tests CONS  Partial coverage  Chrome, IE?  Old browser layout engine versions  Limited navigation
  • 33. VISUAL COVERAGE TOOLS MOTIVATION  Verify that the app / site looks right in all real execution environments  Test as many UI states as possible  Execute many tests in parallel SETUP  Render screenshots using real browsers on a variety of operating systems and devices in parallel  WebDriver, Grid  Code driven tests  WebDriver, DSLCONS  Requires test infrastructure  Implement and maintain test code
  • 34. SELENIUM BASED TOOLS CODE / SCRIPT ● Needle (Python WD) ● WebDriverCss (JS WebDriverIO) ● Gemini (JS DSL) ● Selenium Visual Diff (Java WD) ● VisualCeption (PHP CodeCeption) ● Pix-Diff (JS Protractor) ● Shoov (JS WebDriverIO) ● Vizregress (.NET WD) ● Rspec Page Regression (Capibara) ● Applitools Eyes (All WD + Appium) ● Fighting Layout Bugs (Java WebDriver) ● Huxley (Record Playback) CONFIGURATION ● Viff ● CSS Visual Test ● GreenOnion ● Wraith-Selenium
  • 35. HOW DOES IT WORK? Drive the AUT and take screenshots Compare screenshots with baseline images Report differences Update the baseline
  • 36. REPORT DIFFERENCES As files on the file system WebDriverCSS
  • 37. REPORT DIFFERENCES As a gallery Selenium Visual Diff
  • 38. HOW DOES IT WORK? Drive the AUT and take screenshots Compare screenshots with baseline images Report differences Update the baseline
  • 42. AGENDA  Why automated visual testing?  Tools & Technology  Where does it fit?  Q & A
  • 43. WHERE DOES IT FIT? • Component s • Code review • Developers • Designers • QA Visual testing of frontend components by frontend developers
  • 44. WHERE DOES IT FIT? • Pages • Page sections • Developers • Designers • QA • Others Full or partial validation of application screens A collaboration tool
  • 45. WHERE DOES IT FIT? • Staging vs. Production • Ops • QA Validate your staging deployment using your production deployment as a baseline
  • 46. WHERE DOES IT FIT? • Monitoring • Ops • QA No missing resources in production No corruption due to 3rd party data No corruption due to browser / OS upgrades
  • 47. Adam Carmi (@carmiadam) Co-Founder and VP R&D at Applitools QUESTIONS?