Name: Fast, Cheap, and Portable: How Docker Made UI Testing Accessible for Everyone
Date/time: Wednesday, October 4, 2023, 11:20 AM - 12:05 PM Pacific Time
In the fast-paced world of software development, ensuring the quality of user interfaces (UI) is crucial. However, UI testing often presents challenges such as complex setups, high costs, and difficulties in maintaining consistency across environments. This is where Docker and DevOps are a game-changer. In this talk, we will delve into the remarkable success case of how Docker has transformed UI testing, enabling organisations to achieve cost savings, portability, and accelerated developer workflows. We will explore how Docker containers have revolutionised the way UI tests are executed, providing a robust and efficient environment for testing web applications. This is the story of the GitHub project "docker-selenium”, an essential part of the Selenium ecosystem, which has played a significant role in transforming UI testing practices and inspiring other open source projects to adopt similar solutions. The project's history dates back to early 2014 when Docker started gaining traction in the software development community. Recognizing the potential benefits of Docker for UI testing, a group of Selenium contributors initiated the "docker-selenium" project to provide a Dockerized solution for running Selenium Grid together with the most popular browsers. Throughout the session, we will cover into the following key areas, through practical examples and success stories:
1. Developer Workflow Enhancement: Quick setup and teardown of a local infrastructure where real end to end tests can be executed, enabling developers to verify their changes before committing any changes. Docker helps to simplify the environment setup and eliminate compatibility issues. A reproducible testing environment is available across the different stages of the software development lifecycle.
2. Cost Reduction: Learn how Docker Selenium optimises resource utilisation, allowing developers to run multiple UI tests simultaneously on the same hardware. This significantly reduces infrastructure costs while maintaining testing effectiveness.
3. Test Portability: One of the biggest wins, portable UI testing environments that can be easily shared and replicated across development teams and DevOps pipelines. Consistent environments for testing makes it simpler to reproduce bugs and collaborate effectively across the entire team and organisation.
4. Quality Enhancement with DevOps Orchestration: Docker seamlessly integrates with DevOps practices, automating UI tests throughout the software development lifecycle. It facilitates faster feedback loops, bug detection, and improved software quality by incorporating UI testing in continuous integration and pre-production environments.
By the end of this talk, attendees will be equipped with practical insights and best practices to incorporate Dockerized UI testing into your own projects, enabling improved developer workflows, reduced costs, enhanced test portability, and elevated software quality. Join us and witness how Open Source and Docker changed how and when UI testing is done along the software development lifecycle!