schedule Jun 24th 03:15 PM - 04:00 PM place ESquire Hall 1 people 4 Attending

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.

 

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

Outline/structure of the Session

  • What is a pattern? - 1 min
  • Different ways / patterns to specify Test Data - 5 min
  • For 3 case studies (of different types), discuss: - 30 min
    • what options for specifying Test Data would work in each case study
    • advantages and disadvantages of using each options
  • Questions & Answers all along the way & towards the end! - 5+ min

Learning Outcome

  • Patterns for Test Data Management, with pros and cons of each
  • Which pattern to use based on different case studies

Target Audience

Testers, Automation Testers, QAs, Developers, Business Analysts, any other roles / team members involved with Automation

schedule Submitted 1 year ago

Comments Subscribe to Comments

comment Comment on this Proposal

  • 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 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 Pooja Shah
    keyboard_arrow_down

    Pooja Shah - Can we Have it All! {Selenium for web, mobile and Everything what a Product needs}

    Pooja Shah
    Pooja Shah
    Lead Automation Engineer
    MoEngage
    schedule 1 year ago
    Sold Out!
    45 Mins
    Experience Report
    Advanced

    Problem Statement

    Expected Result: Mobile is taking over the world and wow! my product works awesomely everywhere.

    Actual Result:  OMG! it breaks on iOS 6 :-( 

    Holy Jesus! did we also test on firefox version 30.0 on Windows machine ?? innocent

    Having an application on all major platforms(Desktop Web, Mobile Web, Mobile Native apps etc.) brings a daunting requirement of verifying every single feature before giving a +1 for release and so it becomes essential for the QA folk to test and provide proper feedback as quickly as possible, which immediately takes the complete reliance only on manual testing out of the question and pushes for the need for automated testing with scalable automation framework embracing any product need in the future.

    We surely have 5 points to be answered before we think about such solution :

    1. Do we have a single test code which can test the product everywhere with a simple mechanism to trigger and manage them?
    2. Where is the plan to reduce Time To market having so many tests running before each code push?
    3. Do we have 1 click solution to monitor all the test results in one go to assert the state of ThumbsUp for release?
    4. Is continuos integration in place?
    5. How can I integrate all of the above 4 points using the same beautiful tool Selenium along with other aligned open-source projects like Appium, Shell and Jenkins?
  • Liked Robin Gupta
    keyboard_arrow_down

    Robin Gupta - The Interviewer, Interviewee and vice-versa

    Robin Gupta
    Robin Gupta
    Test Lead
    HappiestMinds
    schedule 1 year ago
    Sold Out!
    20 Mins
    Talk
    Beginner

    This small talk is about the intricate fabric of discussion between an interviewer and an interviewee for the post of Automation Engineer.

    The audience would be taken through a maze of silly, run of the mill, subjective, bizarre and occasionally brilliant questions/answers/discussions found in an average interview for Automation Engineer/Selenium Engineer. 

    We'll try to look at the 4 quadrants of the Selenium Interview circle, covering it from the perspectives of :

    1. The Interviewer
    2. The Interviewee
    3. Current Industry state
    4. How can we improve?

    This might seem like a soft, non-technical, not-so-important topic of discussion but we must remember that bad interviews lead to bad candidates lead to bad deliverables. As they say, For want of a nail the battle was lost. 

    And in today's cut-throat world none of us can afford losing a good candidate to a bad interview.

    Lets gather around a fire of questions, on the beach of answers to surgically comprehend the What, How and Why of Selenium Interviews.

     

    The Candidate

     

  • Liked Nikitha Iyer
    keyboard_arrow_down

    Nikitha Iyer / Anand Bagmar - Sharing the pain in Automating with Protractor & WebDriver

    45 Mins
    Case Study
    Intermediate

    There is a saying ..."Sukh baatne se badhta hai, dukh baatne se kam hota hai", translated as - "happiness increases & sadness reduces on sharing with others".

    We want to take this opportunity to share with our experiences - the good and the bad, in the journey of building a Test Automation framework for an AngularJS based application. 

    We will learn, by a case study, what thought process we applied on the given context (product, team, skills, capabilities, long term vision) to come up with an appropriate Test Automation Strategy. This Test Automation strategy covered all aspects of Test Automation - Unit, Integration, UI - i.e. End-2-End tests (E2E).

    Next, we will share how we went about narrowing-down, and eventually selecting a specific Tech Stack + Tools (Javascript / Jasmine / Protractor / Selenium-WebDriver) to accomplish the Test Automation for the product.

    Lastly, we will share the challenges that came up in the implementation of the Test Automation, and how we overcame them. This will also include how we managed to get the tests running in Jenkins - a Continuous Integration tool. 

    This discussion is applicable to all team members who are working on Test Automation!

    P.S. We will be attempting to make a sample protractor-based automation framework available on github for anyone to use as a starting point for setting up protractor-based Test Automation framework.

  • 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.

  • 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 / Jatin Makhija - 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 Michal Vanek
    keyboard_arrow_down

    Michal Vanek / Filip Braun - 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 Adam Carmi
    keyboard_arrow_down

    Adam Carmi - Advanced Automated Visual Testing With Selenium

    Adam Carmi
    Adam Carmi
    Co-Founder and VP R&D
    Applitools
    schedule 1 year ago
    Sold Out!
    45 Mins
    Talk
    Beginner

    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!

  • Liked Dharmesh Vaya
    keyboard_arrow_down

    Dharmesh Vaya - Hands-on guide to Object Identification

    45 Mins
    Tutorial
    Beginner

    Often it is observed that new-comers jumping to Selenium have mastered the API but are stuck up with Object Identification. It becomes very essential that test automation engineers identify robust mechanisms to identify objects and make their scripts less fragile. This talk/tutorial deals with writing optimized Object locators and having best practices in identifying them.

  • 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.

     

  • Liked Pooja Shah
    keyboard_arrow_down

    Pooja Shah - Step by Step Mobile Automation with maintainable element locators

    Pooja Shah
    Pooja Shah
    Lead Automation Engineer
    MoEngage
    schedule 1 year ago
    Sold Out!
    480 Mins
    Workshop
    Beginner

    This workshop will feature getting started with automating Android & iOS native apps and Mobile web using Appium with java.

    We will learn :

        - how to capture elements for all these 3 categories (Mobile Web, android, iOS)

        - how to create tests

        - how to give them a form of framework to have reporting/screenshots etc. benefits

        - how to setup to run all of them in parallel to save time of testing

        

     

  • Liked Sargis Sargsyan
    keyboard_arrow_down

    Sargis Sargsyan - Web Application Testing with Selenium

    90 Mins
    Talk
    Intermediate

    Creating automated tests for a web application can be challenging. During this talk we will discuss how to use the popular browser automation framework, Selenium, to create automated tests for web applications. We will examine using Selenium and Java to automate the web browser using Selenium WebDriver.  Also we will talk about the implementation of a simple, maintainable framework for testing a web application using Selenium.

  • Liked Uzi Eilon
    keyboard_arrow_down

    Uzi Eilon - Selenium Tests with Zero Code

    45 Mins
    Demonstration
    Intermediate

    More and more companies are using responsive web to solve their digital requirements when user can execute any transactions from any screen.

    The varieties of screen sizes, browsers, devices and OS required more UI and end-user testing.

    One of the method to run end-user testing is monkey tests (executed clicks on random locations on the screen).

    The DOM object tree contains a lot of data which can help us to generate tests.

    In this session, I will describe how to use the DOM data to automatically build an object repository and to generate tests without writing any code.

    One more aspect of the UI testing is the validations, in the session i will show how to execute visual validation from standard selenuim test.

    I will also show how to:

    • Use on test on Mobile and big screen browsers.
    • Execute Tests on different devices and operating system in parallel. 
    • Add real user condition and persona base testing to your current tests. 
    • Smart reporting 

    For more details see: zero-effort-automation

     

  • Liked Christina Thalayasingam
    keyboard_arrow_down

    Christina Thalayasingam - Distributed Testing and Test Reporting

    45 Mins
    Demonstration
    Advanced

    As we are moving into the agile world, continuous integration has a major role to play.

    So how do we cater for a complete test on every sprint or every release? We can use Selenium for Test Automation. When we use a continuous integration approach it would be helpful to use Selenium Grid. It allows you to run your tests on different machines against different browsers in parallel. Essentially, Selenium-Grid supports distributed test execution. 

    This helps you to run your automated tests on various different machines, operating systems and browsers at the same time. This saves time and would help  to run your testing in a nightly build.

    Extent Reports will go hand in hand with Selenium Grid as it will help you retrieve all test results including Test Evidences into a comprehendible report.

    This talk would have a quick guide on how to use Selenium. With details on how to create html reports (with latest plug-in) which would give understanding test execution results for both technical and non technical people. The highlight of the talk would be on Selenium Grid which permits to run Selenium test cases on various operating systems and browsers from a specific hub. This would cover quick demonstrations on main browsers used in the industry such as Firefox, Chrome and Internet explorer. This would help for continuous integration.

  • Liked Dharmesh Vaya
    keyboard_arrow_down

    Dharmesh Vaya - Selenium + SoapUI + JMeter : A complete framework

    45 Mins
    Talk
    Beginner

    This talk showcases how you can develop a framework in Java with all kinds of features like WebTesting with Selenium, Service Layer testing with SoapUI and Load Testing with JMeter - all packaged as a single testing solution. Above all, make use of open source libraries and get details HTML reports as well as Summary reports. This solution allows you to seamlessly integrate all your testing requirements under a single framework.