Test Automation for Testers using Java and Selenium


Auto - Version:1
Description
Most companies today understand that relying mainly on manual testing is inefficient, and accordingly move towards test automation. In order to stay relevant in this changing world, testers must learn to write and maintain automated tests. This course teaches the basics of programming in Java, which is the most popular programming language, and Selenium, which is the most widely used Web UI automation tool. It also provides some basic guidelines and best practices for building test automation that is easy to maintain.
Intended audience
Testers with at least 1 year of experience in the industry. No programming background is required.
Expand All
  • day1
    • Java Quick Start
      • The IDE
      • Compilation
      • Hello world
      • Basic debugging
    • Data Types, operators and variables
      • Declaring, assigning and using variables
      • Primitive variable types
      • Printing the value of variables
      • Using operators (arithmetic, Boolean, relational and trinary)
      • Working with non-primitive types and variables
  • day2
    • Introduction to JUnit and Selenium
      • Getting started with Selenium
        • Opening the browser
        • Navigate to Url
        • Locating and clicking on an element
        • Asserting on the text of an element
      • Understanding the DOM and working with Selenium
        • Understanding the DOM
        • Basic Selenium locators
        • Click, SendKeys
        • Advanced locators (xpath and css)
        • Implicit and Explicit wait
        • Saving screenshots and page source
      • Introduction to JUnit
        • Adding the Maven dependency
        • @Test
        • Asserts
        • @Before/@After/@BeforeClass/@AfterClass
        • Demo: Testing the “Map” class
  • day3
    • Conditional logic
      • If statements
      • Switch statements
      • While loops
      • For loops
      • Nesting conditional logic
    • Working with Arrays and lists
      • Arrays
      • Lists
      • For-loops on arrays and lists
      • Iterating over the result of findElements
  • day4
    • Methods
      • Arguments
      • Variable scope
      • Return value
      • The call stack
    • Classes and objects
      • Declaring a class
      • Declaring a variable of the class
      • Adding methods to the class and calling them
      • Encapsulation: private and public
  • day5
    • The Page-Object Model pattern
      • Creating a class for each page
      • Getting the WebDriver instance in the constructor and storing it in a field
      • Adding methods to represent operations on the page
      • Returning new page objects from operations that navigate to other pages
    • Inheritance and Polymorphism (optional - if time allows)
      • Introduction to Inheritance
      • Defining similar page objects using inheritance
      • Introduction to Polymorphism
      • Examples of polymorphism in page objects
    • Introduction to Object Oriented Programming
      • Introduction to instances and references
      • Adding fields to the class
      • Constructors
      • Overloads
  • Help testers which mainly do manual testing start developing automated tests for Web applications using Java