Automated Web Testing with Selenium and WebDriver Using Java

Automated testing is almost mandatory to guarantee the stability of an application. This course teaches you how to test web applications using first a record-and-playback approach with Selenium, and then a more advanced approach using WebDriver.
Course info
Rating
(63)
Level
Intermediate
Updated
Sep 22, 2017
Duration
3h 14m
Table of contents
Course Overview
Getting Started with Selenium
Using the Selenium IDE
Understanding WebDriver
Applying Advanced WebDriver Techniques
Using Selenium Server
Building a Framework
Description
Course info
Rating
(63)
Level
Intermediate
Updated
Sep 22, 2017
Duration
3h 14m
Description

At the core of testing any website efficiently is a thorough knowledge of how to do automated testing. In this course, Automated Web Testing with Selenium and WebDriver Using Java, you'll learn the skills you need to test web applications using both a record-and-playback approach, as well as a programmatic style. First, you'll discover how to create a suite of tests. Next, you'll explore how to test standard html elements, such as tables, lists, buttons, and text elements. Finally, you'll cover how to deal with AJAX type functionality. When you're finished with this course, you'll have a foundational understanding of not only how to do automated testing, but how to create your own QA framework.

About the author
About the author

Bryan is a Director at Software Technology Group, a consulting company based out of Salt Lake City, and has authored and taught numerous courses in Java.

More from the author
What’s New in Spring 5
Intermediate
1h 25m
Jan 31, 2018
Building Applications Using Spring JDBC
Intermediate
2h 33m
Apr 27, 2017
More courses by Bryan Hansen
Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hi everyone, my name is Bryan Hansen, and welcome to my course, Automated Web Testing with Selenium and WebDriver Using Java. I'm a director of development at Software Technology Group, as well as a Pluralsight author. Automated testing is now almost mandatory to guarantee the stability of an application. Manual click and testing doesn't guarantee regression testing won't break previous functionality by itself. In this course, we're going to test web pages using Selenium, WebDriver, and then writing a test framework to build a complete testing solution for web applications. Some of the major topics that we will cover include the Selenium framework, how to use the Selenium IDE to record and play back tests, building tests using WebDriver and Java, and building our own testing framework to separate our app and tests from the tooling that executes them. By the end of this course, you'll know how to test applications using the Selenium tools, and when to use record and playback with custom WebDriver tests. Before beginning the course, you should be familiar with Java and Maven. I hope you'll join me on this journey to learn automated testing with the Automated Web Testing Using Selenium and WebDriver Using Java course, at Pluralsight.

Getting Started with Selenium
How do you guarantee that you don't ship software with bugs in your application? Or better yet, how do you know that you haven't broken something else while trying to fix an identified bug inside your application? Testing, regression testing, and automated testing are all things that Selenium and WebDriver can help you with in ensuring that you deliver quality software. Hello, I'm Bryan Hansen, and welcome to my course on Automated Web Testing with Selenium and WebDriver Using Java, on Pluralsight. In this course, we are going to be learning about the web testing framework, Selenium. We are then going to learn about the Selenium IDE, a tool that we use inside the Firefox browser that allows us to record scripts and play them back. This is a great foundation for us to then transfer to using WebDriver tests in which we can write tests and automated tests using Java for our browser. Once we have a solid base of WebDriver, we will learn about more advanced techniques such as Selenium Server, and parallel and remote execution of tests, and all of this wraps up with us creating an automation framework and reporting on tests that we run in that framework. Let's get started by looking at a simple Selenium test.

Using the Selenium IDE
In this module, we are going to be talking about the Selenium IDE. The Selenium IDE is actually a Firefox plugin, and it allows us to record automated web tests and then play them back. It also offers features beyond simple record and playback that we're going to look at and see how you can use it as a starting point to be able to create your own suite of automated tests. We'll also talk about some of the pros and cons of using the recorder, but first let's get the plugin installed, and familiarize ourselves with the Selenium IDE.

Understanding WebDriver
In this module, we are going to be talking about the basics of using WebDriver. To this point, we've talked a little bit about Selenium. We've seen how to use the Selenium IDE to create some automated tests by recording, and then modifying what we've recorded. Now we're actually going to get into the real meat of using Selenium. And this is the way that I recommend that you use Selenium. We're going to look at WebDriver. We'll see how to write some code to automate browsers, and then later we'll be able to apply this knowledge to create a testing framework using WebDriver. Let's start off by learning a bit about WebDriver, and how we can use that in our application to write our own automated tests.

Applying Advanced WebDriver Techniques
In this module, we will cover some of the advanced techniques that we use with WebDriver. We'll cover some of the things we didn't cover in the previous module, things like selecting from radio list items, drop-downs, getting data from tables, using one of the advanced selectors like XPath to get data that might be hard to get in another way, and then we're going to look at using some dynamic elements on a page. This is crucial, since a lot of web pages that you might be testing or interacting with today are going to use dynamically loaded elements, or ajax type functionality. We'll cover better techniques to handle these type of ajax and single-page applications.

Using Selenium Server
In this module, we're going to be taking a look at Selenium Server. So far, we've covered some of the other Selenium technologies like Selenium IDE, which is a browser plugin that we could use to record and replay tests and then generate Selenium WebDriver tests, which we just covered. Selenium Server is different than any one of these, and in fact, complements them rather than competes with them. Selenium Server is used to remotely execute tests, and can be run as part of a grid. Let's dive into how to install Selenium Server and how we can use it with some of the WebDriver tests that we've already created.

Building a Framework
In this module, we're going to be learning about actually creating a framework for our automated tests. Up to this point, we've learned about Selenium and WebDriver, but now we're going to put that knowledge into use. One of the most important things that you need to know how to do before you start writing automated tests is how to build a good framework, because this is going to determine whether or not your automation efforts are going to be successful. This module is a compact module of the knowledge that you want to acquire on building an automation framework. We could easily spend months building a good automation framework, but this is a good little bootstrap to getting you started and show you some working examples of how to create an automation framework of your own.