"This world is such a beautiful place to live in." If you can read the first sentence without any screen readers or assistance, you're privileged. As technologists, shouldn’t we be more empathetic towards differently-abled people and make all parts of our website accessible to them? In my humble opinion, the true power of technology can be identified when it reaches out to people of all kinds having different physical or psychological challenges. We not only legally bound to provide Accessibility but also it should be considered as our moral responsibility.

As testers, we have a wonderful opportunity to contribute to Accessibility by ensuring that the site is accessible in many different ways. Although it is impossible to identify all the issues that exist around Accessibility in the world, we are lucky enough to still understand a majority of them. With this understanding, there have been many measures taken in order to make your site accessible. But, don’t forget - we are QA engineers. We got to ensure that the site is accessible as per the standards set by WCAG 2.0 (AA) by testing for accessibility using various tools and techniques.

 
 

Outline/Structure of the Talk

  1. Accessibility in general and how things are made accessible to differently-abled people in the real world
  2. What is Accessibility in the web world and its importance?
  3. Introduction to Accessibility testing
  4. Tools (Open source) and techniques in Accessibility testing
  5. QA checklist for each technique
  6. Demonstration using Keyboard, screen-reader, Colour Contrast Analyzer, and PDF Accessibility

Learning Outcome

As we progress ahead with the session, you will learn about -

  1. Importance of Accessibility
    1. What do you mean by Accessibility in general?
    2. Types of impairments
    3. How are things made accessible in the real world?
  2. Introduction to Accessibility and testing in the web world
  3. Tools and Techniques for Accessibility testing
    1. Bluetooth keyboards
    1. Keyboard testing
    2. Screen reader
    3. Automated evaluation tools which catch around 80% of the issues in the code
    4. Color Contrast Analyzer
    5. Screen magnifier
  4. Mobile Accessibility testing
  5. PDF Accessibility testing
  6. QA checklist for the above techniques

Target Audience

QA/Test Engineers, Frontend developers, Project Managers, Technical Leads

Prerequisites for Attendees

There are no prerequisites for this session.

schedule Submitted 2 months ago

Public Feedback

comment Suggest improvements to the Speaker
  • Maaret Pyhajarvi
    By Maaret Pyhajarvi  ~  5 days ago
    reply Reply

    Accessibility is important topic, which leads me to two themes of questions:

    - Why this talk needs two presenters, and how the overall outline leverages the two presenters? 

    - With many talks on accessibility around, what makes this talk unique to learn from? 

    Finally, I notice the approach this talk chooses is around spending time with application applying different techniques to uncover problems. Did I read correctly that the talk would exclude the automation part of accessibility checkers we can build into our pipelines? 

    • Shweta Sharma
      By Shweta Sharma  ~  5 days ago
      reply Reply

      Thank you for reviewing the proposal and the comments Maaret. I would like to answer them in the same order as of questions -

      1. Nikita and I, both have a good experience and working knowledge on performing Accessibility testing on various web applications (a majority of them which are also live). We both were also equally excited and enthusiastic about sharing our knowledge on this topic and be a part of the Selenium Conference 2020. As we both belong to the same organization, we thought it is better if we collaborate on the proposal because it made less sense to submit two similar proposals independently when the experiences have also been similar. Also, that immediately reduces the probability of rejection.
        We have conducted this as an internal webinar in our organization (as part of our bi-weekly webinars), so the outline is fairly distributed between both of us. Other factors that we considered were, 45 mins. talk is a good candidate to have a change of voices at decent intervals for the audience attention.
      2. When there is too much information available to choose from, one might feel overwhelmed to understand where to begin from. So,
        1. We would help you with the roadmap on how to get started with developing this capability and continue on the self-exploration path.
        2. Explain the importance of performing Accessibility testing by humans.
        3. How we collaborated with the developers in our organization and stressed the importance of providing an accessible website as a basic feature than an add on or an additional feature.

      I see that we missed mentioning the Accessibility related automated evaluation tools in the Outline. Thanks for noticing and bringing that up Maaret. We would have a slide for that too wherein we would not only mention the tools available, but also demo the usage and explain how we used it in our pipelines or to be generic, how it can be built as part of your pipeline.

      Please let me know if you need more details.

       


  • Liked Naveen Khunteta
    keyboard_arrow_down

    Naveen Khunteta - Best Practices to use Selenium in Real Time Projects. How to leverage your Test Automation, get the best 'Return ON Investment' from your Test Automation.

    45 Mins
    Talk
    Intermediate

    Best Practices to use Selenium in Real Time Projects. How to leverage your Test Automation, get the best 'Return ON Investment' from your Test Automation.

    This has been observed that, most of the test frameworks wont be able to survive due to lack of expertise, no maintenance, no best practices being followed, and finally your test automation will be dead after few months, and there is no "Return ON Investment" from this. This is the most common problem, most of the companies are struggling and finally back to square to the Manual testing.

    My proposal : HOW to leverage your test automation in terms of best practices, best ROI, and how to adopt best automation culture in your organisation.
    I strongly propose some of the important points/suggestions to achieve this in your Organisation/Team.
    1. Best Test Automation Practices:
    • Best Design Patterns (Web/Mobile/API)
    • What to Automate/Not to Automate
    • Best Design Patterns
    2. Common Automation Frameworks at Org Level:
    • How to design Generic Utilities, Libraries and different Components, which can be suitable for all the teams in the same Org.
    • Best practices to design your Tests (Automation).
      • Common Design Patterns
      • Common application level libraries
      • Common Page Libraries
      • Best Practices to use Assertions in your Tests (How and What to write for assertions). Most of the people don't write proper assertions and this is making your test unreliable and no defects found during execution.
    3. Inclusion of API/Backend libraries in your UI test automation as an external Maven/Gradle Dependencies to avoid un-necessary tasks, some of the important points to be considered here:
    • User Creation from APIs (No need to automate user creation from web/app for all the test cases)
    • API tests are stabled most of the time
    • API calls takes lesser time as compared to web, hence include API calls in your UI/App framework to save time.
    • Less flaky test

    4. Best Code Review Process (Do not merge your code into Master without proper Code Review)

    • Implement PR (PULL Request) Process
    • Peer to Peer review
    • Static Analysis using SonarQube, Cobertura, JACOCO etc..
    • Get the benefits of Best Test Automation Quality Matrices
    • Sometimes, Manual (Functional Tester) should review your code (Assertion, test steps and use cases) to get the best coverage
    5. Quality is A Team responsibility:
    • Developers, POs, Manual QEs and Automation engineers should be included to get an overview of test automation coverage.
    6. Maintenance of the Frameworks
    • After couple of months, it should not make your life miserable if you don't maintain your libraries and framework properly.
    • Do not use Hard Coded values, make it simple and Generic.
    7. Common Automation Frameworks:
    • Core/TCOE/R&D Team should provide the common automation libraries, generic methods, utilities, best reporting tools at the Org level. Common best practices should be followed at the company level.
    8. Infrastructure Setup for Test Design and Test Execution:
    • Proper Browser - OS lab setup
    • Proper Mobile Labs setup with different Devices - IOT, iOS, Android, iPad, Tablets
    • Proper CI - CD common configuration using Jenkins, Dev Ops, AWS, Docker and Cloud setup
    • Handling multiple Docker nodes using Kubernates
  • 45 Mins
    Talk
    Intermediate

    In this era of Digital transformation, clients have been demanding shorter and quicker releases. Shorter and quicker releases mean your team should not only be able to develop them at the required pace but also test and release them at a sustainable pace. User interface plays an important role in the client's business and there are organizations that release new features, fancy CSS regularly that support multiple browsers, multiple Operating systems, mobile devices. Verifying the frontend on this browser/device/OS matrix by humans is not only extremely time consuming but also prone to human errors. In fact, testing by humans should primarily focus on discovery leaving the repetitive and error-prone tasks to tools. Hence, automating Visual tests is becoming less of an optional activity and more of a must-have activity within the team. Ensuring visually perfect user experiences is equally important as to have the functionality working.

  • Liked Sameer Arora
    keyboard_arrow_down

    Sameer Arora - Triggering alerts on Slack along with screenshots in case of test case failure

    45 Mins
    Demonstration
    Beginner

    One of the biggest limitations with most of the frameworks in selenium is that we need to wait till the end to get the final test case report. Only then we can raise the alert that a particular functionality is broken. By then, it may be too late! In addition to this, in most of the frameworks, the HTML report generated is hosted on our company's private network and we need to connect to the VPN if we are outside the office to open the report and check the related screenshots to see which test case has failed and why.

    So, why not raise an alert as soon as the test case fails? And why not attach a screenshot along with that alert so that all the stakeholders can actually see what has failed in the application?

    In this session, we will learn a simple yet a really useful way of sending an alert along with the failed test case screenshot by integrating slack with selenium which will help us alert all the stakeholders as soon as an automated test case fails so that everyone can react to it immediately and the damage will be minimised.

  • Liked Khanh Do
    keyboard_arrow_down

    Khanh Do - Leveraging Artificial Intelligence to create self-healing tests

    Khanh Do
    Khanh Do
    QA Architect
    Kobiton
    schedule 2 months ago
    Sold Out!
    90 Mins
    Tutorial
    Intermediate

    A key requirement for successful test automation is to get past the brittle or fragile nature of test scripts. Any Selenium (or Appium) developer has encountered the dreaded "NoSuchElement Exception". A locator that worked yesterday may fail today. What's a test engineer to do?

    Fortunately the field of AI provides promising solutions and allows for the creation of self-healing tests. Tests that can find elements across all environments. Tests that can learn from "human-in-the-loop" intervention and work perfectly thereafter. Imagine automated tests that "just work"!

    This session will look at how to apply the latest in AI and Machine Learning technologies to improve your test scripts. With the plethora of new open source AI libraries made available by companies such as Google, the ability to leverage AI in your applications is more accessible than ever.

    This session will be a primer on AI technologies and how they can be utilized for perfect test automation.

  • Liked Pallavi Sharma
    keyboard_arrow_down

    Pallavi Sharma - Learn Selenium with JavaScript

    Pallavi Sharma
    Pallavi Sharma
    Founder
    5 Elements Learning
    schedule 2 weeks ago
    Sold Out!
    480 Mins
    Workshop
    Beginner

    Selenium is a popular open source test automation tool, so popular it has its own conference event which run for 3 whole days across continents and is attended by hundreds of enthusiastic testers, and people wanting to know more about testing and automation. In my little experience of coaching for last 7 years, i feel what english language has done for common man[those from non english speaking countries] in earning bread and butter and giving them an elite status, selenium has done for manual testers.

    Anyone and everyone wants to learn Selenium. The magic of selenium or the flexibility is that it can be learnt with your choice of programming languages. I have taught people Selenium with Java, C#, Python and Ruby largely in past these years. I wish to delve into the world of Javascript now and see what this has to offer to us. So this workshop is for those open minded souls out there who wish to pick up another language and learn, unlearn, relearn selenium with it.

  • Liked Abhijeet Vaikar
    keyboard_arrow_down

    Abhijeet Vaikar - End-end test code as a first class citizen

    45 Mins
    Case Study
    Intermediate

    "All tests in today's automated regression run have been marked as Untested. What happened?"

    "No notifications are being sent for test runs on the channel"

    "I pulled latest code, and the framework dependency shows compilation error"

    "What does this new method in the framework do?"

    How often do you hear such things within your team?

    As Quality champions, we need to walk the talk. When we expect our developers to write quality code, write unit tests, build features without introducing bugs, the onus lies on us (as test engineers) to do the same. With almost every test engineering team writing automated tests to check functionality of their products and services, it becomes very important to ensure that the test automation framework and the test scripts are bug-free and follow good standards of software engineering.

    It cannot be stressed enough that test automation code should be as good as production code. In order to build production-quality test automation framework and scripts, a number of steps can be taken at:

    1. Code & System Level

    2. Process & People Level

    Our test engineering team went through a transition from having random & unexpected failing test runs to having greater confidence in the quality of the tests. Learn from this case study of our journey to ensure that end-end UI automated tests are built with quality in mind. We will also see demonstration of some of the use cases.

  • Liked Artem Sokovets
    keyboard_arrow_down

    Artem Sokovets - Motion Up! Next level of automation testing

    45 Mins
    Case Study
    Intermediate

    In the test automation industry, the Page Object pattern has been used for more than 8 years. During this time, Java has been updated from JDK7 to JDK13. It's time to update the Page Object Pattern. What do you think about what next POM representation ?

    Do you really know what application coverage brings your UI tests? - Not, I will show you how we can calculate it. Yes, one way is using the JoCoCo plugin, but there are other ways that exist.

    What about the test report tools? Most of your know Allure report, but do you hear about Allure Server?

    If you have an interest in the above themes come to my talk.

  • Liked Ivan Krutov
    keyboard_arrow_down

    Ivan Krutov - Workshop: Efficient Selenium Infrastructure with Selenoid

    Ivan Krutov
    Ivan Krutov
    Developer
    Aerokube
    schedule 1 week ago
    Sold Out!
    480 Mins
    Workshop
    Intermediate

    Selenoid is an alternative lightning fast open-source Selenium protocol implementation running browsers and Android emulators inside Docker containers. It is distributed with a set of ready-to-use Docker images corresponding to the majority of popular browser versions, has a one-command installation utility and works slightly more efficiently than traditional Selenium Grid.

    This tutorial shows how to build efficient and scalable browser automation infrastructure using Selenoid and related tools. You will be taught why running browsers in containers is so efficient, how to easily install Selenoid and use its powerful features.

  • Liked Srinivasu gangam
    keyboard_arrow_down

    Srinivasu gangam - Zero Touch Automation using NLP (Natural language processing) & AI

    Srinivasu gangam
    Srinivasu gangam
    Sr Manager
    Cotiviti India
    schedule 2 months ago
    Sold Out!
    45 Mins
    Demonstration
    Intermediate

    Problem Statement:

    As part of SDLC process:

    1. Is your product quality impacted due to a smaller number of QA resources available in the team?
    2. Are you waiting for QA resources to certify your code every time when you deploy? Is this impacting your product lead time (Speed to Market)?
    3. Is your Product delivery timelines are impacted due to last minute defects identified?
    4. Do you have your QA resources only in one location, but you want to “follow-the-sun” approach for Software delivery across multiple locations?
    5. Do you have manual testers who are not skilled in programming, but you want them to execute automated test scripts w/o any training efforts and automation setup?
    6. Would you like your team more agile and cross functional with Delivery?
    7. Would you like to increase your QA team’s productivity while they invest more time in script development rather than script execution?

    If answer is ‘Yes’ for above questions, "Zero touch automation" is the solution for above challenges that we have been facing part of SDLC.

    Solution: Zero touch automation with cutting-edge technologies

    In this session, I will cover how we solved this problem using innovative solutions, Cutting-edge technologies like NLP (Natural language processing), AI & Cloud solutions.

    You will learn how AI, NLP integrated with core automation components to achieve Zero touch automation.

    This solution is not just revolutionary, it is paradigm shift in test automation to get results to your email with detailed analysis of failure categorization with recommended actions to users.

    I will also cover how E2E automation will be driven with decisions taken by machines based on what user is looking for . There is no manual intervention in this process. NLP and AI play key role to help machines to take decisions.

    We will also cover how we empowered developer/release manager/any team member/Manager to trigger the scripts from their cell phone and get the detailed execution report without having any automation software installed in their computer or Phone.

    We will be demonstrating how the request will be initiated from User, understand the need from user using NLP & AI , Fetching the code from bitbucket to select appropriate automation scripts , running them on Selenoid/docker server , storing results to MongoDB , receiving email with test results and Failure analysis.

    What is the value of zero touch automation?

    1. Enable speed to market: Now that Developers does not need to wait for QA resource, Changes can be certified quickly and ready to push to production. Lead time will be significantly reduced.
    2. Increase quality: Now that test automation is easy and it can run multiple times in each environment, most of the defects will be uncovered and addressed before code goes to production.
    3. Ease of test execution: Test execution will be very easy, no automation or framework setup required from user side. Test execution can be done 24*7.
    4. Productivity: Increase QA team’s Productivity to focus more on script development rather than focusing on script execution and failure analysis .
  • Liked Prateek Sethi
    keyboard_arrow_down

    Prateek Sethi - Enhance Test Automation ROI with Docker based Selenium Environment

    Prateek Sethi
    Prateek Sethi
    QA Lead
    3PillarGlobal
    schedule 1 week ago
    Sold Out!
    45 Mins
    Demonstration
    Intermediate

    Quick Description :

    To support the continuously evolving software industry, DevOps and Agile practices have established themselves as a big helping hand. With ever-increasing large scale digital transformation projects, organizations realize that the only way to shorten the product development cycles is to automate the processes involved in the delivery pipeline.

    There are many tools and technologies to establish DevOps, but one of the most important ones is containerization, which gives flexibility in application packaging and automating a number of processes involved in the delivery pipeline. Containers have all the needed configurations and dependencies, for faster delivery of committed items to the customer. Docker is an open-source solution that makes it easier to create, deploy and run applications securely using containers. Therefore, quick feedback and testing applications with different environments can be achieved using Selenium with Docker.

    My Proposal :

    We can reduce the significant effort in provisioning, maintaining, running the Test Automation on different environment setup using, Docker with Test Automation. Some of the benefits are:

    Benefits of using Docker with Selenium:

    1. Test an application on multiple browsers and their different versions without installing them on multiple machines
    2. To test multiple application builds concurrently without updating the code for different environments
    3. To test your applications on multiple devices/OS/Browser combinations on a single machine.As Selenium within Docker will make it much quicker to test different environments by using the preconfigured containers.
    4. Also, I will cover topics like how to set up the Selenium multi-environment setup using Docker concepts like Compose file, etc.

    Best practices using Selenium with Docker

    1. Common Dos and Don'ts for this setup.
    2. How to avoid over maintenance of your Test Harness.
    3. Infrastructure setup

    Increase the power of your Test Automation Setup with Kubernates:

    How to handle Selenium grid-based dockerize nodes with Kubernates.

  • Liked Vijay Ravindran
    keyboard_arrow_down

    Vijay Ravindran - Automation on Unity Engine application - Ways to automate Unity Game Engine applications using Unity Test Runner and Autoplay,Selenium tool.

    Vijay Ravindran
    Vijay Ravindran
    Sr. QAE
    Trimble
    schedule 1 month ago
    Sold Out!
    45 Mins
    Tutorial
    Beginner

    Unity 3D game engine is used to develop games and enterprise application development in multiple platform which is compatible across devices. It is an excellent cross development tool, especially used for Next-Gen technologies like augmented and virtual reality applications.

    As everyone is familiar with the terms like appium, selenium for automation in mobile application, it's quite a big challenge and uncertain when it comes to automation in mobile application built in Unity engine. Here we will discuss about the solution on automating unity built application using following methods:

    1. Using Unity Test Runner - which comes with Unity application using [UnityTest] attribute
    2. Using AutoPlay, Selenium - Similar to web testing with inspector and web driver protocol support.

    Method 1 : Unity Test Runner

    • The Unity Test Runner is a tool that tests your code in both Edit mode and Play mode, and also on target platforms such as Standalone, Android, or iOS.
    • The Unity Test Runner uses a Unity integration of the NUnit library, which is an open-source unit testing library for .Net languages.
    • [UnityTest Attribute] - Addition to the standard NUnit library for the Unity Test Runner.

    Method 2: Using AutoPlay and Selenium

    • Inspect game scene
    • Manage game on real devices (install / uninstall, start / stop, etc)
    • Run Selenium tests (with all base selenium actions like click, getText, swipe, get elements property, etc)
    • Write test on any programming language (Java, C#, python, etc)

    Looking forward to meet you all in SeleniumConf 2020

  • Liked Gaurav Singh
    keyboard_arrow_down

    Gaurav Singh - How to build an automation framework with selenium : patterns and practices

    Gaurav Singh
    Gaurav Singh
    Product Engineer
    Go-Jek
    schedule 1 month ago
    Sold Out!
    45 Mins
    Talk
    Beginner

    With an ever increasing no of businesses being conducted on web the testing need to write automated tests for the app's UI is something that can never be ignored. As you all know Selenium provides an API that enables us to do this quite effectively.

    However, when tasked with setting up the automation framework, there are a lot of questions that arise in the minds of aspiring test developers regardless of what level they are in their career.


    Some of such questions are:

    1. How does one actually go about the business of building a robust and effective automation framework on top of selenium?
    2. What are the elementary building blocks to include in the framework that an aspiring automation developer should know of?
    3. How should we model our tests? XUnit style vs BDD?
    4. Are there good practices, sensible design patterns and abstractions that we can follow in our code?
    5. What are some of the anti patterns/common mistakes we should avoid

    A lot of literature, documentation and blogs exists on these topics on the web already.

    However In this talk,

    I would combine this existing knowledge and my years of experience in building automation frameworks and breakdown these elements and walk you through exactly the sort of decisions/considerations and practices that you can take while starting to implement or improve the UI automation for your team.

    Hope to see you there!

  • Liked Nishil Patel
    keyboard_arrow_down

    Nishil Patel - Tesbo : An Awesome Test Automation Framework with Plain English Text But not BDD

    Nishil Patel
    Nishil Patel
    Founder
    QAble
    schedule 2 weeks ago
    Sold Out!
    45 Mins
    Demonstration
    Beginner

    Tesbo is a hybrid Test Framework built top on the Selenium which allows you to use the plain English language to define the test which helps you to reduce the development and maintenance time and efforts. sounds similar to the BDD framework (i.e. Cucumber, Specflow, Gauge etc...) ??? But No It Isn't... It's much better than Cucumber.

    In this session, we will look into why we have developed Tesbo and how it will reduce the development and maintenance times of web and mobile test script.

    This session will focus on the

    • Introduction of Tesbo
    • Advantages of Tesbo
    • Feature description
    • Test Development and Execution demo
    • Future plans for Tesbo
  • Liked Shi Ling Tai
    keyboard_arrow_down

    Shi Ling Tai - Start with the scariest code

    Shi Ling Tai
    Shi Ling Tai
    CEO
    UI-licious
    schedule 1 month ago
    Sold Out!
    20 Mins
    Talk
    Beginner

    "We should start from unit tests"

    "No, integration tests are better!"

    "Should we use tool A or tool B?"

    I see this debate play out all the time, and I've been there before.

    A lot of teams get lost trying to figure out where and how to get started with testing. It is really intimidating because there's so much to test, and so many ways to do testing. The worst that could happen is inaction from the decision paralysis.

    My rule of thumb is "Start with the scariest code". Let me share with you my process for prioritising what to test and figuring out how to test it.

  • Liked Shi Ling Tai
    keyboard_arrow_down

    Shi Ling Tai - Accessible UI = Testable UI

    Shi Ling Tai
    Shi Ling Tai
    CEO
    UI-licious
    schedule 1 month ago
    Sold Out!
    20 Mins
    Talk
    Intermediate

    What makes a UI testable?

    If you've ever struggled with testing icon buttons, sliders, datepickers, you know what I mean. Those things are a pain to test, and the tests you've written is probably not very maintainable either.

    Here's an argument on making UI more accessible - it's means your UI is more testable too - let me show you what I mean.