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

schedule Jun 25th 11:30 AM - 12:15 PM place Grand Ball Room 2 people 7 Attending

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.   

 

 
37 favorite thumb_down thumb_up 4 comments visibility_off  Remove from Watchlist visibility  Add to Watchlist
 

Outline/structure of the Session

1. Digital - Market trend and how it impact web and mobile apps.

2. Testing Pyramid - Go over the testing pyramid and go over each layer and explain why this approach worked and what are the cons and pros of each layer.

3. The "Hourglass" - Present the new concept and explain why they are needed.

4. Provide examples on cases that this approached helped and where lack of those tests was translated to low quality app

5. Best practices - How to take the "hourglass" approach and embed it on your testing strategy.

Note: This is a pure best practice session and we will not discuss any commercial solution. The best practices are going to be based on Appium and solution.

Learning Outcome

Attendees will:

1. Get better understanding on what is coverage components for mobile and web applications. Hoe to calculate and define the coverage.

2. Best practices on how to update test plans and automation tests to extend coverage and align it to digital. 

Target Audience

Testers, QA Eng, Automation Eng, Developers, Managers

schedule Submitted 1 year ago

Comments Subscribe to Comments

comment Comment on this Proposal
  • meital
    By meital  ~  1 year ago
    reply Reply

    when will you know if this will presented as as session at the event?

    • Roy Nuriel
      By Roy Nuriel  ~  1 year ago
      reply Reply

      Meital - I assume that the organizers will update soon. Thanks

  • nir
    By nir  ~  1 year ago
    reply Reply

    this seems intresting, will this focus on coverage for legacy as well?

    • Roy Nuriel
      By Roy Nuriel  ~  1 year ago
      reply Reply

      Yes - The idea is to discuss how coverage changed and what are the parameters we need to take into account - some of them apply for legacy apps as well.


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

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

  • 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 Alexander Bayandin
    keyboard_arrow_down

    Alexander Bayandin - Mobile Web Test Automation: to the Desktop!

    45 Mins
    Talk
    Advanced

    How does it usually look when people do Mobile Web Test Automation? They write a couple of tests, run them on some desktop browser and only after that try to run on emulators/simulators and the final step is adapting and fixing the tests for browsers on real devices.

    By happy chance we developed our tests for Mobile Web on real devices. But some time ago we decided to run on Desktop as well.

    Why? What benefits did we get? How do we have both Appium and Selenium tests in one repository? And what challenges did we face? About this and many other things I will tell in my talk.

  • Liked Vikram V Ingleshwar
    keyboard_arrow_down

    Vikram V Ingleshwar - How to be a assistant cook from waiter - my experiences with software testing and automation

    Vikram V Ingleshwar
    Vikram V Ingleshwar
    SDET
    Microsoft GmbH
    schedule 1 year ago
    Sold Out!
    45 Mins
    Talk
    Intermediate

    In this talk I would like to share good practices of BDD , Cucumber Tool and its usage with Selenium with Serenity framework , Appium and API Testing.

    I will be sharing how I had implemented BDD culture in team , which was following Agile ( fast waterfall ) , how it has helped business.

    There are many who know Selenium and are experts in it. But with BDD and Cucumber , it can be used much more efficiently.

     

    The main benefits of this methodology will be reducing bugs , re-work , tech debt , bad customer reviews , cost and increases overall productiveness and happiness across orgnisation

     

    With all these , QA can be assistant cook along with main cook ( who is developer and/or product ) and elevate from traditional waiter role , where some code is thrown at him to deliver to somebody who pays for it.

  • Liked Eran Kinsbruner
    keyboard_arrow_down

    Eran Kinsbruner - Beyond Resizing a Browser: Useful Responsive Web Testing Tips

    Eran Kinsbruner
    Eran Kinsbruner
    Technical Evangelist
    Perfecto
    schedule 1 year ago
    Sold Out!
    45 Mins
    Talk
    Advanced

    At least half of web traffic comes from a mobile device, so it's no surprise that organizations are adopting different strategies to ensure a consistent user experience on any device. However, there's a lot more to a quality digital experience than simply viewing a website on different screen sizes.

     

    To truly deliver seamless web viewing and interaction on any device from laptop to smartphone, RWD apps using Selenium needs to go through rigorous testing including: testing on actual devices (not emulators), testing against real user conditions and interruptions, and testing visual aspects such as screen orientation changes.

     

     

  • Liked Sreevatsa S
    keyboard_arrow_down

    Sreevatsa S - Digital Users, Digital World – All about response

    Sreevatsa S
    Sreevatsa S
    Area Enablement Manager
    Perfecto
    schedule 1 year ago
    Sold Out!
    20 Mins
    Talk
    Intermediate

    Today’s much of the digital traffic around the world is driven by web applications and this can happen from SmartPhone, Tablet or Desktop. No matter on which device the user is browsing through the website, he should get the same experience wherein the key challenge lies.

    Responsive web design (RWD) is becoming the preferred method for developing websites that look and work consistently on all devices. The idea behind this strategy is to give all users a seamless digital experience no matter what device, browser, screen size or orientation (portrait vs. landscape) they use.

    Selenium is the defacto for Cross-Browser testing in the industry and now it faces a few challenges including –

    • Alignment of Text
    • Overlapping elements
    • Scrolls on the page
    • Readability of the pages across all screen sizes and resolutions

    Join me in finding a solution with Selenium in order to address the Responsiveness of Web Applications

     

  • Liked Dharmesh Vaya
    keyboard_arrow_down

    Dharmesh Vaya - Practical tutorial in Test Framework development

    480 Mins
    Workshop
    Intermediate

    Advanced users in Selenium are given the challenging task of developing a framework from scratch. However, its best to understand the core requirements of how the framework is going to be utilized in order to develop the framework with minimal efforts. This tutorial teaches development of core-building blocks that can be implemented for any Selenium based framework with maximum flexibility and minimum efforts.

  • Liked Sweta Shahi
    keyboard_arrow_down

    Sweta Shahi - Visual Regression Testing - How Selenium can help?

    Sweta Shahi
    Sweta Shahi
    Group Lead
    Srijan Technologies
    schedule 1 year ago
    Sold Out!
    20 Mins
    Demonstration
    Beginner

    In today's software world, web applications need to go though constant change to maintain highest standards of quality of service. With continuous changes, one of the biggest challenges in the testing fraternity is to reduce the effort in regression testing. Often UI testing is cited as an area where automated tools have a limitation.

    In this session, will try to cover how using a simple program and using tools like ImageMagick, we can automate visual regression of the site in no time. Also, this means after every change (front-end or feature) if causes any unexpected behavior can be brought to notice immediately. A set of benchmark images of the stable version will be compared against those from the build's latest version and help reduce the extra effort testers spend in testing the UI on different browsers.