The consumer is putting increasing demands on organisations to deliver applications across many devices, browsers and platforms. With increasing pressure being put on test tool budgets, IT professionals are looking to the open source market for test automation tools.
Selenium 3.0 allows both developers and testers to automate tests against applications and execute them against multiple browsers. This course aims at providing a solid foundation to the attendee in understanding automated testing using Selenium 3.0.
The objectives of this course are not only to teach what the tool is capable of doing, but to focus on the practical steps required to make automation using Selenium work in the real world. The course provides a hands-on walkthrough to allow attendees to understand the steps in making Selenium function in the real world.
Objectives of the Using Selenium 3.0 courseOn completion of the course, attendees will understand how to configure Selenium 2.0 and how to automate tests using the tool.
- Automation Overview
- Core skills taught on the course
- Overview of Selenium IDE
- Available add-ins
- Recording and replay of a Selenium IDE test
- Firebug, Firepath and other object recognition tools
- Assertions and Verifications
- Exporting a Selenium IDE test as Java
Creating Selenium 3.0 Scripts in Eclipse IDE
- Installing and configuring Eclipse
- Creating a basic automated test and a test suite
- Executing a test and test suite through Eclipse
- Importing a test from Selenium IDE
- Components of a Selenium Webdriver test in JUnit
- Annotations in WebDriver
- Interacting with the AUT: object locators
- Actions on WebElements
Data Driving Selenium Tests
- Use of data sources (e.g. Excel spreadsheets, CSV files, databases) to provide increased maintainability flexibility.
Debugging and coding
Debugging skills are a critical and often overlooked part of learning how to automate tests. This section teaches the basics of how to debug in the Eclipse IDE, including:
- Setting breakpoints
- Retrieving values on-the-fly
- Stepping through code
- Using observations from the application under test and data source
- Making deductions
- Building and testing a hypothesis
Page Object Model
The Page Object Model allows the reuse of code, essential for constructing a maintainable automation framework. Areas covered include:
- Introducing the Page Object Model: concept of re-use
- The concept of Public and Private and its uses
- How to access the page objects in a test script
Object recognition is one of the commonest issues that an automation tester will have to face. Fortunately, there are a number of techniques and approaches that can be used to identify troublesome objects. This module includes:
- Why it is hard to identify an object. The need to be unique, stable, navigable.
- Choice of element locator
- Use of multiple locator properties
- Use of XPath or CSS
- Use of Xpath and CSS patterns
- Use of ordinal identifiers
- XPath and CSS syntax: how to use the firepath tool to write more stable locators
- Descriptive programming for dynamic objects
- How to navigate web iframes
Behaviour Driven Development (BDD) and Cucumber
Companies are increasingly turning towards Agile approaches, and behaviour-driven development (BDD) in particular, to resolve issues of out-of-date documentation and siloed working. This bonus lesson offers a brief overview of the fundamental principles of BDD and then shows the significant features of a BDD framework. The module includes:
- Feature files
- Step definitions
- Runner classes
- An outside-in test driven approach to developing an automation test.
Target groupAgile testers, test automation specialist looking to learn Selenium and testers wishing to become test automation specialists
PrerequisitesAlthough it is beneficial that attendees have a coding background (ideally in Java), this is not essential. The code examples used during the course are available in the training environment for attendees less experienced in Java to Access.
Your benefits at a glance
- Learn the most up-to-date methodology
- Deliver increased efficiency and effectiveness to your team
- Learn through best practices and real examples
- Learn with trainers who have proven track records
- Flexible delivery with online learning options
- Train with the world’s leading independent specialist in Software Quality