Selenium using Java and Cucumber

This Selenium training, tailored to experienced developers and testers with substantial HTML and Java experience, teaches attendees how to automate testing of web application interfaces using...

Read More
Course Code ACCEL-JAV-406
Duration 2 days
Available Formats Classroom
7363 Reviews star_rate star_rate star_rate star_rate star_half
Course Image

This Selenium training, tailored to experienced developers and testers with substantial HTML and Java experience, teaches attendees how to automate testing of web application interfaces using Selenium with Java and Cucumber. Selenium is a testing framework for web applications, Java is a programming language that can be used to automate Selenium, and Cucumber is a software tool for running automated acceptance tests.

Skills Gained

All students will learn to:

  • Create test scripts using Selenium Builder
  • Know how to use the online documentation and the WebDriver API
  • Create, debug and maintain Selenium test scripts
  • Understand and be able to communicate the concepts necessary for testing with Selenium
  • Interact and verify web elements using selectors
  • Refactor existing scripts to leverage the Page Object Model
  • Use Behavior Driven Development techniques

Prerequisites

Students should have prior testing and/or automation experience as well as good command of the Java language and HTML and DOM fundamentals.

Software Requirements:

  • Firefox & Chrome Browsers
  • Firefox Plugins
  • Firebug, Firepath, Selenium Builder
  • Java Development Kit (JDK) 8.x (or 7.x)
  • IntelliJ IDE (we make use of specific refactoring tools in the class that are stronger in IntelliJ than in any other IDE)
  • Maven 3.x

Course Details

Outline

Introduction

Understanding BDD

  • Compare BDD with TDD
  • Understand that BDD defines specifies requirements
  • Be able to classify Selenium vs Cucumber
  • Understand Automated Testing
  • Acceptance vs Regression Tests

Getting Started with TestNG/JUnit & Selenium

  • Selenium Overview
  • Create an new project with TestNG/JUnit
  • Create your first test
  • Write assertions & run tests.
  • Generate tests with Selenium Builder
  • Running Tests & TestSuites

Refactoring Test Scripts (with IntelliJ)

  • Understanding the Web Driver API
  • Element IDs & Name Selectors
  • CSS & XPath Selectors
  • Mouse & Keyboard Input
  • Timeouts and Waits
  • Debugging

Page Object Model & Page Factory

  • Maintaining tests using the Page Object model
  • Refactor existing scripts to leverage Page Object Model
  • @FindBy(...)

Cucumber Acceptance Tests using Selenium

  • Cucumber Overview
  • Following the user story style
  • Defining Cucumber steps as maintainable functions
  • Best practices for creating maintainable test scenarios and step definitions
  • Scenario Outlines

WebDriver & Multiple Browsers

  • Requirements for running tests in multiple browsers
  • Creating test suites for multiple browsers
  • Creating portable tests
  • Installing and maintaining WebDrivers for multiple browsers

Best Practices (touched on throughout the course)

  • TDD
  • Refactoring
  • Scrum
  • Continuous Integration
  • Iterative Development

Conclusion