schedule 03:15 PM - 04:00 PM place Grand Ball Room 1 people 6 Attending

Automated visual testing is a major emerging trend in the dev / test community. In this talk you will learn what visual testing is and why it should be automated. We will take a deep dive into some of the technological challenges involved with visual test automation and show how modern tools address them. We will review available Selenium-based open-source and commercial visual testing tools, demo cutting edge technologies that enable running cross browser and cross device visual tests at large scale, and show how visual test automation fits in the development / deployment lifecycle.

If you don’t know what visual testing is, if you think that Sikuli is a visual test automation tool, if you are already automating your visual tests and want to learn more on what else is out there, if you are on your way to implement Continuous Deployment or just interested in seeing how cool image processing algorithms can be, this talk is for you!

 
27 favorite thumb_down thumb_up 0 comments visibility_off  Remove from Watchlist visibility  Add to Watchlist
 

Outline/structure of the Session

The talk will be structured as follows:

  1. Explain what visual testing is and why it should be automated.
  2. A high level overview of how visual test automation tools work
  3. Run a live visual test with an open-source Selenium-based visual test automation tool
  4. Review existing visual test automation tools and compare their capabilities from screenshot capturing, to image comparison and baseline management.
  5. Show common sources for false positives and how they are handled by modern image comparison engines.
  6. Demonstrate a live cross-browser visual test.
  7. Tips for enabling large scale visual testing
  8. Show how automated visual testing fits in the modern development lifecycle from unit tests to production monitoring.

Learning Outcome

In this talk you will learn:

  1. What visual testing is and why it should be automated.
  2. What tools are out there, how they work, and the important features to look for when choosing your visual test automation tool
  3. How to scale up your visual tests.
  4. How to best integrate automated visual tests in your development and testing process.

Target Audience

Test Automation Engineers, QA Managers, Engineering managers, Frontend developers

schedule Submitted 1 year ago

Comments Subscribe to Comments

comment Comment on this Proposal

  • Liked Naresh Jain
    keyboard_arrow_down

    Naresh Jain - Q & A with the Selenium Committee

    Naresh Jain
    Naresh Jain
    Founder
    ConfEngine.com
    schedule 1 year ago
    Sold Out!
    45 mins
    Keynote
    Intermediate

    Q & A with the Selenium Committee

  • Liked Simon Stewart
    keyboard_arrow_down

    Simon Stewart - Fix a Bug, Become a Committer

    Simon Stewart
    Simon Stewart
    WebDriver Creator
    Facebook
    schedule 1 year ago
    Sold Out!
    480 mins
    Workshop
    Beginner

    Have you ever wondered how Selenium works under the covers? Do you get frustrated with locators not locating, pages not loading, or browsers behaving inconsistently from one run to the next? Selenium is an attempt to unify thousands of disparate elements across a wide spectrum of challenges into a single, common interface that works seamlessly with all the major browsers - and yet only a handful of volunteers work to maintain this gigantic effort. If you would like to enhance your own Selenium experience while contributing back to the software that has defined so many of our careers, come to this workshop. In it we'll dissect the different elements of Selenium, dive into its internals, learn how it was built and how to make changes to it, and even write a unit test you can contribute on the same day!

  • Priti Biyani
    Priti Biyani
    Consultant
    ThoughtWorks
    schedule 1 year ago
    Sold Out!
    90 mins
    Case Study
    Intermediate

    These days we find most of the apps are being developed across different platform, iOS, android, windows and to keep the user base which uses web, mobile web and websites. 

    When apps are being developed for cross domains, most of the functionality provided by the app is very similar, varying thing is PLATFORM. 

     In rapid development cycle, where there are tools which allows you to write once and reuse across multiple platforms, makes development very faster. 
    But at the same time, if we have different automation suite for different platforms, it becomes very difficult to keep a pace with ongoing functionality. 
    This is the exact problem we faced, and the solution we came up with is "One Page to test them all! -A cross platform mobile automation framework! "

     

    Page Object Model

    Well, Page Object Model was again a natural fit for this framework. Most implementations of POM recommend different POMs for each platform. But we wanted to have a single Page Object Model for all the 3 platforms to ensure maximum code reuse and reduce overall time spent in adding new automation.
     

    Single Page Object Model across platforms

    This was complicated because we had native screens as well as webview screens and so it was not possible to use the same Page Object. To solve this, we introduced abstractions for the elements on the screen and encapsulated the respective native driver implementations.

    This also allowed us to implement common automation tasks in one place for e.g waiting for new pages to load, so that this code is not repeated across multiple step definitions and platforms. This helped us move to thinking in higher domain level concepts than in terms of low level UI interactions.

    So, in summary, we write our tests for one platform and run them for all with an abstraction layer in place.

     

     

  • Liked Irfan Ahmad
    keyboard_arrow_down

    Irfan Ahmad - Testing as a Container : Using Docker with selenium and friends to ship fast

    Irfan Ahmad
    Irfan Ahmad
    QA Engineering Lead
    Upgrad
    schedule 1 year ago
    Sold Out!
    45 mins
    Demonstration
    Intermediate

    We see two upcoming trends in the world of software delivery.

    1.Docker is becoming a standard for managing infrastructure using containers.

    2.Testing code and its infrastructure starts to grow at scale with more complexity, dependencies and technology diversity.

    A container is an entire portable runtime environment: an application, plus all its dependencies, libraries and other binaries, and configuration files needed to run it, bundled into one package. By containerizing the application platform and its dependencies ,all differences in OS distributions and underlying infrastructure are abstracted away which makes it easy to share and execute anywhere.

    At this talk we will learn how to leverage the container technology to solve the challenges of growing testing infrastructure and continuous delivery with key focus on below items.

    • Basics of the containers technology and specifically it’s application on the test automation. 
    • How Docker can reduce the time of test execution, ease the setup of clean test environments and drastically reduce the differences between the development, acceptance and production environments leading to the higher quality of the released software.
    • Examples to containerize entire testing stack together consisting of major automation tools (selenium, appium, phantomjs), performance tools (jmeter,gatling) with cucumber. 
    • Integrating and managing testing container with other application containers to achieve easily manageable continuous delivery pipeline.
    • Best practices and patterns for docker success.

     

     

  • Liked Vivek Upreti
    keyboard_arrow_down

    Vivek Upreti - Cross-platform, Multi-device Instant Communication Testing in Parallel using Appium and Docker

    45 mins
    Demonstration
    Intermediate

    Today over 100 million users share over 40 billion messages per month on Hike. Its not just simple 1:1 chat messages. Users can do a VoIP call or share rich multi-media content in 8 different languages in group chats with hundreds of members. User can transfer large (upto 100 MB) file using Wifi-Direct .i.e. device to device file transfer without using Internet. And many more features. How do you ensure that you can roll out a release every month without breaking any of these features?

    With such a large user based, which is very sensitive to frequent upgrades due to data consumption cost, rigorously testing the app becomes extremely critical.

    When we started our automation journey in 2014, we were looking for a device lab which can simplify our testing effort. However we gave up and ended up building our own setup. The reason being, we require multiple devices that can communicate with each other for a single test. And we have 6000+ such tests, which we want to run in parallel. While many device labs allow you to run tests in parallel, they don't allow the devices to communicate with each other. Also its not possible to run the same test across multiple devices. Imagine testing a group-chat flow with photo sharing or imagine the device to device file transfer using hotspot. How would you test these features?

     

    If this interests you, join us and we'll share our learning trying to achieve this at Hike.

  • Liked Roy Nuriel
    keyboard_arrow_down

    Roy Nuriel - From Pyramids to hourglass - New approach and best practices for digital apps testing

    45 mins
    Talk
    Executive

    One of the first things that you learn when you enter the quality assurance space is the famous triangle braked down to Unit test at the lower, on top of it Acceptance Tests based on API (in some places this layer is integration tests but the idea is the same) and at the top of the Pyramid we have the User Interface (UI) Tests. This Pyramid, in the last two decades was the main principle on how to approach testing activities (mainly automation).

    In the last couple of year we are all taking part in the digital transformation that is taking place all over. Mobile Native applications as well as web applications take part in almost any activity that we are doing during the day, business are building their strategy on this channel and shifting resources and budgets to deliver applications maintained and expend their market share.

    So what changed?

    The users are no longer static, they are interacting with those apps while they are on the train on their way to the office, while waiting for a flight at the airport or drinking coffee while waiting for their next meeting – those “interactions” are done most of the time while they are on the go working with mobile device. In addition the application take advantage of the sensors that those devices provide in order to provide better user experience. The environment where our end users use our application has significant impact on the functionality and performance of our application which at the end of the day we call quality.

    During the last year we developed a new approach for digital application testing – The “Hourglass” – This new approach expend the known Pyramid and update it to the digital era – The client side is richer and contains many components that impact the quality of application. It redefine the definition of coverage. At the top of the pyramid we add 2 additional triangles (the gives the hourglass shape) – The first one is devices – what devices should we test, how we should approach the changes that happens in the devise market. The second is the environment, the places that our end users will use and interact with the application. We leverage the automation investment and get the real digital coverage which will help to reach high quality applications.   

     

  • Liked Ori Bendet
    keyboard_arrow_down

    Ori Bendet - Tales from the Dark Side: The Growth, Implementation and Influence of Selenium inside Hewlett Packard Enterprise

    45 mins
    Talk
    Intermediate

    I know what you’re thinking: the creators of WinRunner, QTP/UFT are now embracing Selenium?

    Ten years after Selenium came into existence as an open source alternative to Mercury Interactive, the perception and relationship between QTP and Selenium has morphed from competition to collaboration with complementary test automation frameworks.

    Join Ori Bendet, HPE Inbound Product Manager for Functional Testing to discuss how HPE’s R&D uses Selenium and other open source tools. Understand the new roles and responsibilities of dev/test @HPE and how they fit into current team structure. Discover their lessons learned about how Selenium and open source has contributed to the success and maturity of HPE's own quality assurance and testing tools across the entire portfolio.

  • Anand Bagmar
    Anand Bagmar
    Director - Quality
    Vuclip Inc.
    schedule 1 year ago
    Sold Out!
    45 mins
    Demonstration
    Intermediate

    Building a Test Automation Framework is easy - there are so many resources / guides / blogs / etc. available to help you get started and help solve the issues you get along the journey.

    Teams already building 1000s of tests of various types - UI, web service-based, integration, unit, etc. is a proof of that.

    However, building a "good" Test Automation Framework is not very easy. There are a lot of principles and practices you need to use, in the right context, with a good set of skills required to make the Test Automation Framework maintainable, scalable and reusable.

    In this talk, we will focus on one of the critical aspects and patterns in building the Test Automation framework - Test Data!

    We will look at different data patterns as options and techniques how to create, manage, use, reuse Test Data in a way to keep the tests running in an reliable and deterministic way. We will also discuss what questions to ask, what things to think about in selecting your approach for Test Data!

    This discussion will be applicable for any type of Test Automation (web / mobile / desktop), but, we will focus primarily on UI automation frameworks, ex. using Selenium.

     

  • Liked Sargis Sargsyan
    keyboard_arrow_down

    Sargis Sargsyan - Better Page Object Handling with Loadable Component Pattern

    45 mins
    Talk
    Advanced

    One of the painful problems in Selenium automated testing is determining whether a HTML page has been loaded. This is especially the case when web application uses a JS  heavy framework such as the popular AngularJS.

    During this talk we will discuss how to handle Selenium Page Object pattern better with Loadable Component.

    The Loadable Component helps test case developers make sure that the page or a component of the page is loaded successfully. I will share my experience about the concept of the Loadable Component and Page Object patterns.

     

     

  • Liked Ankita Gupta
    keyboard_arrow_down

    Ankita Gupta - Web Push Notification Automation Mystery Solved!

    45 mins
    Demonstration
    Intermediate

    Push Notifications are the latest way of sending updates to our users. More and more Organisations are implementing Web Push Notifications along with emails and other notification systems.

    So the Big Question that arises is "How do we automate them?"

    We have come up with a library in various languages which can be integrated with your Automation suite and provide you everything you need about the notification triggered.

    You can easily then trigger and verify the push notification sent and ship out the product without worries :)

  • Liked Bret Pettichord
    keyboard_arrow_down

    Bret Pettichord - Checking as a Service

    Bret Pettichord
    Bret Pettichord
    Software Architect
    HomeAway
    schedule 1 year ago
    Sold Out!
    45 mins
    Keynote
    Beginner

    This talk suggests a reframe in how we understand the business value of automated testing. One shift is to see automation as "checking" rather than "testing". Another is the shift from software delivery to service delivery, including fully embracing DevOps. The resulting approach could be called Checking as a Service or CheckOps, and forces us to rethink traditional automation priorities. In this talk, Bret will explain how change in approach has affected teams he's worked with and how you can use it to improve your ability to deliver valued services.

  • Liked Vinay Babu
    keyboard_arrow_down

    Vinay Babu - Web Scrapping with Selenium and Data Analysis using IPython Notebook

    20 mins
    Talk
    Intermediate

    Data Analysis is one of the upcoming field and as many of the data scientists says that the most of time they spend for analysis is on Data cleaning, So, In this short session we will see how one can pull the data from the web using Selenium Webdriver and will use this data further for the Data Analysis, The entire exercise will be executed on a IPython Notebook, which is a tool used to execute & save your code and perform data analysis using python data analysis libraries, it also provides a platform to massage the data and visualize it in the form of graphs and tables.

    This entire exercise would be helpful for anyone who wants to understand how data can be pulled with the help of Selenium Webdriver from a website and organized using python libraries for the data analysis. During this session we would be using an open source data for analysis and see how we can draw conclusions using this data.

  • Liked Michal Vanek
    keyboard_arrow_down

    Michal Vanek - Breaking down the barriers: Testing desktop apps with Selenium

    45 mins
    Talk
    Intermediate

    Selenium was born for web-application testing. But have you ever thought it could be a great tool for testing Windows desktop apps too?

    Today, more and more desktop apps use a web-like approach to implement their UI. The methods vary from basic HTMLayout environment to complex designs in CEF (Chromium Embedded Framework). However traditional GUI automation tools seem to be a step behind or ignoring the trend completely. This situation calls for finding new ways of testing.

    In our talk we shall introduce to you a new way of utilizing Selenium for automated testing of desktop applications. No matter whether the HTML UI content is completely offline or loaded and updated dynamically, Selenium is able to access and navigate it just like in a web page. We’ll also show you how to build a small framework around it and plug it into your Continuous Integration process. All of this will be demonstrated using a real-life instance of Avast Antivirus for Windows.

     

  • Liked Prasad Kalgutkar
    keyboard_arrow_down

    Prasad Kalgutkar - Brace yourself from an automation death trap

    45 mins
    Case Study
    Intermediate

    We all in the voyage to test effectively always think about test automation & let me tell you, its no less crucial & important than production app code. Its a code/framework/architecture built to test your app code and catch some of app defects. This when placed in an eco-system of continuous integration & deployment takes a next level of importance.

    I have been fortunate enough to have had my share of failures & eventually learn out of it while automating. In this session, I wish to take my audience through the importance of automation in Agile, the essentials to think of while deciding the tools and also take some tangible take-aways while writing automation code.

    The take-aways will be some technical inputs which have immensely helped me to build flexible frameworks for delivery of enterprise products. The aspects this take-aways will touch are on the pressings issues an automation tester face around test data management, code modularization, defining the clarity on responsibilities of different modules/classes written in an automation framework.

    This session will be a good dialogue supported with some live demos for better understanding & overall making us think to stay away from the obvious failures.

  • Liked Justin Ison
    keyboard_arrow_down

    Justin Ison - Appium Workshop

    Justin Ison
    Justin Ison
    Senior Software Engineer
    Microsoft
    schedule 1 year ago
    Sold Out!
    480 mins
    Workshop
    Beginner
    This workshop will feature getting started with automating Android with Appium. We'll learn how to capture elements in Ruby using irb (interactive Ruby), writing a test with rspec. Once we have our tests established, we'll then go into setting up a mobile device grid. Running the tests in parallel, distributed, and capturing critical report data (logs, screenshots, and video). We will also run some examples against a cloud testing service.

     

  • Dan Cuellar
    Dan Cuellar
    Head of Software Testing
    FOODit
    schedule 1 year ago
    Sold Out!
    45 mins
    Talk
    Advanced

    Over the last few years, Appium has become the choice automation tool for mobile application UI testing. Most people are familiar with the basics of Appium, but did you know that you Appium can identify elements using image recognition? Did you know you it's also possible to automate Windows phone and Desktop apps with Appium? Have you ever seen Appium run the same test on multiple operating systems, or seen an Appium test run using several devices at once?

    The talk will cover advanced Appium topics such as these along with best practices to ensure you get the most out of Appium.

  • Liked Luke Inman-Semerau
    keyboard_arrow_down

    Luke Inman-Semerau - Grid Workshop

    Luke Inman-Semerau
    Luke Inman-Semerau
    Lead Member Technical Staff
    Salesforce
    schedule 1 year ago
    Sold Out!
    480 mins
    Workshop
    Advanced

    Selenium Grid can be a bit daunting to get up and running. Starting it is quite easy, but using it effectively requires pulling in third party tools. In this workshop we’ll cover how you would realistically run your grid, using modern tooling to run a grid with docker containers or in a cloud service like AWS or theoretically your own VM provisioning environment.

     

  • Pranathi Birudugadda
    Pranathi Birudugadda
    schedule 1 year ago
    Sold Out!
    45 mins
    Demonstration
    Intermediate

    Responsive web design (RWD) is an approach to web design aimed at crafting sites to provide an optimal viewing and interaction experience like easy reading and navigation with a minimum of resizing, panning, and scrolling across a wide range of devices (from desktop computer monitors to mobile phones).

    Responsive web design is becoming more important as the amount of mobile traffic now accounts for more than half of total internet traffic. This trend is so prevalent that Google has begun to boost the ratings of sites that are mobile friendly if the search was made from a mobile device. This has the net effect of penalizing sites that are not mobile friendly.

    The responsive web design responds to the needs of the users and the devices they’re using. The layout changes based on the size and capabilities of the device and provides the enhanced user-experience by re-structuring the contents as per the end-user devices. With plethora devices releasing every day, this has gained significance in the web designing and along with it came the testing challenges. In this talk, we are going to discuss the challenges in testing RWD websites and how to overcome those by using the tools available online.

    I have chosen Galen tool to demonstrate the automation of Responsive web design testing. Come and experience the talk to be enlightened about this new found tool :)

    Why Galen?

    Galen is an open source framework built for responsive websites. It provides the feasibility to test the various pages on screen sizes and browsers. The test and spec files can be written in plain English which makes it easier for the business people to understand and contribute. This can also be used as a guide for the UI developers where they build the layout based on the spec files agreed by the business. 

     

    To know more about Galen, visit Galen Website

     

     

  • Liked Kumar Pratyush
    keyboard_arrow_down

    Kumar Pratyush - Performance Testing a Mobile App Used by 100M Users

    45 mins
    Case Study
    Intermediate

    Hike is used by 100 Million users and many of our users have cheap smart phone (~ $120 USD) that can install no more than 3 mobile apps.

    So the questions is: Should testing of app be limited to its functionality? At Hike, we believe "Performance is Queen!" For our users, if we misuse the critical resources such as Battery, CPU, Network and Memory, its a deal-breaker. Hence pref-testing is very important.

    During the initial days of Hike, we were very reactive and only did (manual) perf testing, when our users reported issues.

    Now, every Sprint (2 weeks) and every public release (monthly), we run our automated perf tests. We measure our app's performance using several app specific use-cases on 4 key areas:

    • CPU,
    • Memory,
    • Battery and
    • Network (data consumption.)

    Hike's CPU Utilization

    We also benchmark the following scenarios for app latency:

    • App launch time upon Force Stop
    • App launch time upon Force Kill
    • App's busiest screen openning time
    • Scrolling latency in different parts of the app
    • Contact loading time in Compose screen

    Hike App Benchmark

    We still have a long way to go in terms of our pref-testing journey at Hike. But we feel, we've some key learnings, which would be worth while to share with the community. Join us, for a fast paced perf-testing session.

  • Liked Sarvesh Shrivastava
    keyboard_arrow_down

    Sarvesh Shrivastava - Functional and Security Testing - An amalgamated automation approach

    45 mins
    Demonstration
    Intermediate

    With increasing cyber threats & online attacks, an unavoidable situation for continuous security testing has emerged. Making sure all vulnerabilities are unleashed regularly is highly significant.

    The paper hence proposes a solution where automated security testing could be achieved in conjunction with functional testing carried out using selenium API.

    It introduces a framework that caters to automated security testing along with functional which could provide an integrated testing elucidation.

    The paper, takes in these two premises to offer a solution where functional automation testers can now take on security testing. I propose a framework where automated security testing could be achieved in conjunction with functional testing using existing selenium API scripts.

    The framework covers the top vulnerabilities and provides intuitive results that help a non-security tester interpret and act on the output. At the very core of this framework is the open source tool, OWASP ZAP, which is easy to use and integrates well with Selenium automation frameworks.

    I bring in hands on project experience having implemented this framework for clients, who have been able to get the value of functional and security testing using the same set of scripts – it is this experience I would like to share with the SeleniumConf2016 audience, to help groom functional testers into security testing, with minimal cost and time, also enabling security testing to be performed every time functional automation is taken up.