Remote Test Automation with Selenium Grid

Explore Practical Test Automation with Selenium, the WebDriver API, Selenium Server and Selenium Grid

TT3621

Introductory and Beyond

4 Days

Course Overview

Remote Test Automation with Selenium Grid provide students with a solid understanding of practical automation concepts using Selenium, the WebDriver API, the Selenium server, and Selenium Grid to drive consistent functional and non-functional tests that are performed remotely and can be parallelized. Students will learn the core API, tools, and how to work with them together to create powerful testing harnesses. Student will then migrate a set of Selenium tests into a remote testing environment, implementing parallelized testing and, eventually, using Cloud-based Grids to run the tests. 

Course Objectives

Students who attend Automated Web Testing with Selenium Driver will leave the course armed with the skills required to recognize how to test web applications for sufficiency.  This course uses Selenium and the WebDriver interface to design and implement tests.  The student will work with a sample Web Application that requires several testing scenarios.  

This “skills-centric” course is about 50% hands-on lab and 50% lecture, designed to train attendees in core Selenium and web testing skills, coupling the most current, effective techniques with the soundest industry practices. Working in a hands-on environment led by our expert practitioner students will:

  • Understand web page testing needs and how Selenium meets those needs
  • Analyze a web application from a functional and testing perspective
  • Use Selenium constructs to locate elements on a web page
  • Test web page forms and the elements in those forms
  • Use test suites to organize and manage tests
  • Review Java constructs needed to by testers in working with WebDriver
  • Design code and run automated Selenium tests using the Java WebDriver API
  • Use the WebDriver API to test advanced web features such as delayed responses and Ajax
  • Using a combination of JUnit 5 features and WebDriver to consume streams of data for testing
  • Focus on Best Practices for Selenium testing using the Java WebDriver API
  • Work with Selenium server and webdriver-manager to run tests
  • Setup and run a Selenium Grid to run a set of Selenium tests
  • Setup and run Selenium tests in parallel in a Selenium Grid
  • Setup and run Selenium tests in a Cloud solution (if students have internet access)
  • An overview of how it all works in Continuous Integration

Need different skills or topics?  If your team requires different topics or tools, additional skills or custom approach, this course may be further adjusted to accommodate.  We offer additional testing, Selenium, Cucumber, Gherkin, Python, TDD, BDD, programming, testing tools, test automation, QA, services, security and other related topics that may be blended with this course for a track that best suits your needs. Our team will collaborate with you to understand your needs and will target the course to focus on your specific learning objectives and goals.

Course Prerequisites

This is an intermediate level course, geared for Test Engineers, Quality Assurance Engineers, and their management who have prior knowledge of Selenium basics. Code examples are in a combination of the specific domain-specific languages and Java, so some experience in basic java would be helpful.

Please see the Related Courses tab for specific Pre-Requisite courses, Related Courses that offer similar skills or topics, and next-step Learning Path recommendations.

Course Agenda

Please note that this list of topics is based on our standard course offering, evolved from typical industry uses and trends. We’ll work with you to tune this course and level of coverage to target the skills you need most. Topics, agenda and labs may adjust during live delivery based on audience needs and skill-level.

Session: Selenium Basics

Lesson: Introduction to Selenium

  • Selenium Concepts and Components
  • Manual Testing using Selenium
  • Automated Testing using Selenium
  • Java, Testing Frameworks, and Selenium WebDriver
  • Lab: Running the Web Application

Session: Testing with Java and Selenium WebDriver

Lesson: JUnit5 for Selenium

  • What JUnit brings to the table
  • JUnit Method Lifecycle
  • Test setup and teardown
  • Parameterized tests
  • Assertions
  • Demo: JUnit
  • Lab: Reapply JUnit
  • Walkthrough: Using JUnit with Selenium

Lesson: Selenium WebDriver

  • Working with WebDriver in Java
  • Finding Spots on Web Pages
  • Working with different browsers
  • Built-In Locators
  • Lab: Creating and Running a WebDriver Test
  • Lab: Testing with Other Browsers
  • Lab: Working with WebDriver Locators
  • Lab: Adding WebDriver Tests

Lesson: WebDriver Deep Dive

  • WebDriver Commands for working with forms
  • Working with complex form components
  • Taking screenshots
  • Working with alerts
  • Lab: Testing Forms using WebDriver
  • Lab: Screenshots

Lesson: Advanced WebDriver

  • Use WebDriver to work with windows, tabs and iframes
  • Utilize Actions class for mouse and keyboard actions
  • Testing file uploads and downloads
  • Testing AJAX elements
  • Waiting for events to happen
  • Feeding data sets into a testing sequence
  • Lab: Testing Wait Styles

Session: Selenium Practices and Processes

Lesson: Selenium Best Practices

  • Preparation
  • Managing Names
  • Multiple Browser Testing
  • High Quality Tests and Test Plans
  • Using Whitespace
  • Efficient Operations
  • Establish Selenium Standards

Lesson: Testing Strategies and Patterns

  • Types of web application tests
  • Strategies for locating elements
  • Wrapping Selenium calls
  • User interface maps
  • Lab: Using Delayed Exceptions
  • Lab: Automated Running of Multiple Test Cases

Session: Extending WebDriver Testing

Lesson: Page Object Model (POM)

  • POM Design Pattern
  • Principles and Design of Page Object classes
  • Object Repository for Locators
  • Page Factory Overview
  • Page Factory Caching
  • Lab: Building Page Object Models
  • Build an Object Repository
  • Lab: Using the Page Factory
  • Lab: Testing the Bank Web Application

Lesson: Introduction to Selenium Frameworks

  • Automation Framework Basics
  • Data Driven Framework
  • Keyword Driven Framework
  • Hybrid Framework

Session: Remote Testing with Selenium Grid

Lesson: Remote Testing

  • Working with Selenium Server
  • Using the webdriver-manager
  • Shifting from local to remote
  • Lab: Review Bank Tests
  • Lab: Using webdriver-manager

Lesson: Selenium Grid Basics

  • Architecture of Selenium Grid
  • Hub: Command and Control
  • Node: Testing Instance
  • Configuring and Running a Selenium Grid
  • Working with RemoteWebDriver
  • Lab: Working with Selenium Grid

Lesson: Running Tests in Parallel

  • The Advantages of Parallelism
  • The Challenges of Parallelism
  • Running Parallel Tests in Grid and JUnit
  • Dealing with Parallel States
  • Lab: Parallelizing Tests in Grid

Lesson: Working with Grid

  • Troubleshooting Grids
  • Best Practices for Working with Grid
  • Challenges with Windows Nodes
  • When Not to use Selenium Grid

Lesson: Extending Selenium Grid

  • Selenium Grid Providers and Solutions
  • Selenium Grid with Docker
  • Zalenium
  • What is Coming in Selenium
  • Lab: Running Tests on a Cloud Solution

Course Materials

 

Hands-on Setup Made Simple! Our dedicated tech team will work with you to ensure your student machines and learning environment is setup, tested and ready to go well in advance of the course delivery date, ensuring a smooth start to class and seamless hands-on experience for your students. We offer several flexible student machine setup options including guided manual set up for simple installation directly on student machines, or cloud based / remote hosted lab solutions where students can log in to a complete separate lab environment minus any installations, or we can supply complete turn-key, pre-loaded equipment to bring ready-to-go student machines to your students or in-person facility.  Please inquire for details.

Raise the bar for advancing technology skills

Attend a Class!

Live scheduled classes are listed below or browse our full course catalog anytime

Special Offers

We regulary offer discounts for individuals, groups and corporate teams. Contact us

Custom Team Training

Check out custom training solutions planned around your unique needs and skills.

EveryCourse Extras

Exclusive materials, ongoing support and a free live course refresh with every class.

Mix, Match & Master!
2FOR1: Two Courses, One Price!

Enroll in *any* two public courses (for 2023 *OR* 2024 dates!) by December 31, for one price!  Learn something new, or share the promo!

Click for Details & Additional Offers

Learn. Explore. Advance!

Extend your training investment! Recorded sessions, free re-sits and after course support included with Every Course
Trivera MiniCamps
Gain the skills you need with less time in the classroom with our short course, live-online hands-on events
Trivera QuickSkills: Free Courses and Webinars
Training on us! Keep your skills current with free live events, courses & webinars
Trivera AfterCourse: Coaching and Support
Expert level after-training support to help organizations put new training skills into practice on the job

The voices of our customers speak volumes

Special Offers
Limited Offer for most courses.

SAVE 50%

Learn More