Learn Automation Testing with Java and Selenium Webdriver [Video]

More Information
  • You will solve a wide range of hands-on Automation Testing exercises with Java and Selenium*
  • You will Learn to write great automation tests with Selenium and Java
  • You will Learn to set up new automation test projects with JUNIT and TestNG
  • You will Learn to create basic Automation Test frameworks

Writing your first automation test with Java and Selenium WebDriver is a lot of fun. Java is one of the most popular programming languages. Java offers both object-oriented and functional programming features. Selenium can be used for screen scraping and to automate repeated tasks on browsers. In this course, you will learn programming with Java and automation testing with Selenium. In no more than 350 steps, we explore the most important Java programming features and Selenium Automation Testing scenarios:

  • Exporting Automation Tests and setting up new a Maven Project for JUnit and TestNG, TestNG vs Junit, TestNG Advanced Features - XML Suite, test reports, running tests with parameters defined in XML and running tests in parallel
  • Advanced Selenium Automation Testing scenarios - Playing with Windows, Modal Windows (Sleep, Implicit Wait, and Explicit Waits), alert boxes, window handles, and new browser window launches, frames, taking screenshots, executing JavaScript code, and the Actions Interface to control mouse and keyboard
  • Set up Automation Testing Frameworks – Tables, important interfaces – WebDriver, Introduction to cross-browser automation testing, headless testing, and setting up a basic cross-browser Automation Testing framework
  • Writing Data-Driven Testing with Data Providers, CSV, and Excel Spreadsheets, Implementing Page Object Model for a complex test scenario, scaling up with Selenium Standalone and Grid
  • Generics - Why do we need Generics? Restrictions with extends and Generic methods, wildcards - upper bound and lower bound, introduction to exception handling - your thought processes during exception handling. try, catch, and finally. Exception hierarchy - checked exceptions vs. unchecked exceptions. Throwing an exception. Creating and throwing a custom exception - CurrenciesDoNotMatchException. Try with resources - a new feature in Java 7.

You will be using Eclipse and Brackets as an IDE. You will be using Maven, npm (Dependency Management), TestNG (XML Test Suite, parallel, and multiple browsers), JUnit, Selenium IDE, Katalon Studio, Selenium Standalone, and Selenium Grid. We will help you set up each one of these.

All the code and supporting files for this course are available at: https://github.com/PacktPublishing/Learn-Automation-Testing-with-Java-and-Selenium-Webdriver

Style and Approach

We take a hands-on approach using Eclipse as an IDE to illustrate more than 200 Java Coding exercises, puzzles, and code examples. We have also written more than 100 Selenium Automation Tests with Java for a wide variety of scenarios.

  • You will Learn Automation Testing the MODERN WAY - Step By Step - With 200 HANDS-ON Code Examples
  • You will acquire ALL THE SKILLS you need to demonstrate EXPERTISE with Selenium and Java in your job interviews
Course Length 39 hours 22 minutes
ISBN 9781838552770
Date Of Publication 26 Mar 2019
Step 01 - Introduction to Multiplication Table challenge
Step 02 - Launch JShell
Step 03 - Break Down Multiplication Table Challenge
Step 04 - Java Expression - An Introduction
Step 05 - Java Expression – Exercises
Step 06 - Java Expression – Puzzles
Step 07 - Printing output to console with Java
Step 08 - Printing output to console with Java - Exercise Statements
Step 09 - Printing output to console with Java - Exercise Solutions
Step 10 - Printing output to console with Java – Puzzles
JShell Tip - Multiple Lines of Code
Step 11 - Advanced Printing output to console with Java
Step 12 - Advanced Printing output to console with Java – Exercises
Step 13 - Introduction to Variables in Java
Step 14 - Introduction to Variables in Java - Exercises and Puzzles
Step 15 - 4 Important Things to Know about Variables in Java
Step 16 - How are variables stored in memory?
Step 17 - How to name a variable?
Step 18 - Understanding Primitive Variable Types in Java
Step 19 - Understanding Primitive Variable Types in Java - Choosing a Type
Java Tip - String Concatenation
Step 20 - Java Assignment Operator
Step 21 - Java Assignment Operator - Puzzles on Increment, Decrement and Compound
Step 22 - Programming Tips: JShell - Shortcuts, Multiple Lines and Variables
Step 23 - Java Conditionals and If Statement – Introduction
Step 24 - Java Conditionals and If Statement - Exercise Statements
Step 25 - Java Conditionals and If Statement - Exercise Solutions
Step 26 - Java Conditionals and If Statement – Puzzles
Step 27 - Java For Loop to Print Multiplication Table – Introduction
Step 28 - Java For Loop to Print Multiplication Table - Exercise Statements
Step 29 - Java For Loop to Print Multiplication Table - Exercise Solutions
Step 30 - Java For Loop to Print Multiplication Table – Puzzles
Step 31 - Getting Started with Programming - Revise all Terminology
Step 02 - List Interface - Introduction - Position is King
Step 03 - List Inteface - Immutability and Introduction of Implementations – Array
Step 04 - List Inteface Implementations - ArrayList vs LinkedList
Programming Tip - Teach Yourselves programming in 10 Years
Step 05 - List Inteface Implementations - ArrayList vs Vector
Step 06 - List Inteface - Methods to add, remove and change elements and lists
Step 07 - List and ArrayList - Iterating around elements
Step 08 - List and ArrayList - Choosing iteration approach for printing and delete
Step 09 - List and ArrayList - Puzzles - Type Safety and Removing Integers
Step 10 - List and ArrayList - Sorting - Introduction to Collections sort static
Step 11 - List and ArrayList - Sorting - Implementing Comparable Inteface
Step 12 - List and ArrayList - Sorting - Providing Flexibility by implementing C
Step 13 - List and ArrayList - A Summary
Step 14 - Set Interface - Introduction - No Duplication
Step 15 - Understanding Data Structures - Array, LinkedList and Hashing
Step 16 - Understanding Data Structures - Tree - Sorted Order
Step 17 - Set Interface - Hands on - HashSet, LinkedHashSet and TreeSet
Step 18 - Set Interface - Exercise - Find Unique Characters in a List
Step 19 - TreeSet - Methods from NavigableSet - floor,lower,upper, subSet, head
Step 20 - Queue Interface - Process Elements in Order
Step 21 - Introduction to PriorityQueue - Basic Methods and Customized Priority
Step 22 - Map Interface - An Introduction - Key and Value
Step 23 - Map Interface - Implementations - HashMap, HashTable, LinkedHashMap
Step 24 - Map Interface - Basic Operations
Step 25 - Map Interface - Comparison - HashMap vs LinkedHashMap vs TreeMap
Step 26 - Map Interface - Exercise - Count Occurrences of characters and words
Step 27 - TreeMap - Methods from NavigableMap - floorKey, higherKey, firstEntry
Step 28 - Java Collections - Conclusion with Three Tips
Step 02 - How does Web Work - Request, Response, HTML and Browser
Step 03 - Installing Web Editor – Brackets
Step 04 - First HTML File - Tags, HTML, Head and Body
Step 05 - Basic HTML Tags - Paragraph, Div, Heading - H1 to H6
Step 06 - Formatting Tags - Bold, Italicized and Quotes
Step 07 - Using Tags without closing tag - BR and HR
Step 08 - W3C Standards for HTML
Step 09 - Creating List of elements with UL LI and OL
Step 10 - Organizing Your Data Using Tables
Step 11 - Organizing Your Data Using Tables - Exercise Solutions
Step 12 - HTML Attributes and Links - Absolute and Relative
Step 13 - Image Tag in HTML - Local and Internet Links
Step 14 - Introduction to Live Preview Feature in Brackets
Step 15 - Nesting of Divs and Understanding align Attribute
Step 16 - Getting Data from User using Forms - Text and TextArea
Step 17 - Attributes on Text Elements - Size, maxlength, value
Step 18 - Choosing among multiple options using Radio Buttons
Step 19 - Choosing among multiple options using Select Box
Step 20 - Choosing Yes or No with Check Box
Step 21 - Submitting a Form and Understanding GET and POST
Step 22 - Introduction to Frames
Step 23 - Miscellaneous - Password Fields, File Input and Multi Select Box
Step 24 - Introduction to CSS
Step 25 - CSS for input, select and text area
Step 26 - CSS attributes with color, background color
Step 27 - Grouping Form Elements with fieldset
Step 28 - Styling Fieldsets with CSS
Step 29 - Exercise - Styling Lists
Step 30 - Using an External CSS File
Step 31 - Understanding Class in CSS
Step 32 - Making best use of Class in CSS and Multiple Classes
Step 33 - Using id with CSS
Step 34 - Understanding CSS Selectors and Testing using $$ function
Step 35 - CSS Selectors - Identifying Input Element
Step 36 - Introduction to XPath Expressions - Absolute and Relative
Step 37 - Using id and class in XPath Expressions
Step 38 - Using XPath on the Forms Page
Step 39 - A Review of XPat Expressions and CSS Selectors


Ranga Karanam

Ranga Karanam of in28Minutes fame is an architect with 15 years of Java programming and design experience with major banking clients across the world. He started in28Minutes with the aim of creating hands-on courses with real-world projects. The Step-By-Step series of courses is one of his creations. They use a problems-solution based step-by-step approach with practical, and real-world application examples. While their primary expertise is in the development, design, and architecture of Java and related frameworks (Spring, Spring Boot, Spring MVC, Struts, Hibernate), they are expanding into the front-end world (Bootstrap, JQuery, Angular JS). The foundations for building high-quality applications are best laid down while learning. They love open source and therefore, all their code is open source too and available on Github. They use the 80-20 rule, touching upon other things to briefly equip you with enough knowledge to find out more on your own.