Testing is a critical to creating and maintaining quality software products. End to end testing gives you a high degree of confidence users of your web application will have the experience that you designed, but how do you actually write end to end tests?
By completing this course you will learn the steps required to write end to end tests with Cucumber and Selenium WebDriver, with no coding required. Using free and open source technologies, anyone can start writing end to end tests in under an hour!
In this course you will learn how to replicate a user's journey through your web application using "Given, When, Then" statements, how to inspect a web application to identify the elements that you need to reference in a test, how to use specialized editors to reduce the time it takes to write tests, and get tips on best practices.
Before we can begin writing end to end tests it is important to understand the technologies that are used and how they interact. This section introduces each of the technologies that make up end to end tests, which are: Java, Java Web Start, Gherkin, Cucumber, Selenium WebDriver and Iridium.
This lecture talks about Java and how it is used by Iridium to power the testing process.
Java Web Start allows test writers to distribute their tests with ease. In this lecture students will see what web start is and how it works.
In this lecture we will explore how Gherkin allows tests writers to create tests that can be read by anyone.
In this lecture students will learn what Cucumber is, and how it relates to Gherkin and Selenium WebDriver.
In this lecture students will learn what Selenium WebDriver is, and how it relates to Cucumber.
In this final lecture students will learn how Gherkin, Cucumber and Selenium WebDriver are brought together with Iridium to produce a single solution that allows test writers to focus on writing end to end tests.
Iridium has a number of prerequisites applications that need to be installed before students can start writing tests. This section will show you where to download these applications, and how to configure them.
It's time to start writing tests! In this section students will replicate the steps that were demonstrated in the first video on the demo website TicketMonster.
What is TicketMonster, and why was it chosen to to demonstrate end to end tests? This lecture will answer these questions.
Being able to identify an element within a web application is critical to writing end to end tests. This section introduces browser developer tools, HTML and CSS, and discusses how these concepts are used when writing tests.
This lecture introduces the Chrome developer tools, which are provided as part of the Chrome web browser to support developers and testers.
HTML and CSS are critical concepts to understand before writing complex end to end tests. This lecture looks at what HTML and CSS are, and how students will inspect the HTML and CSS of a web application using the Chrome developer tools.
Aliases are an important feature of Chrome which allow testers to write tests that are easy to read and maintain.
In this lecture students will learn how to add aliases to their test scripts, and see why using aliases is so important.
It is time to replicate a complete journey through TicketMonster!
In this lecture students will replicate a complete end to end journey through a web application.
Replicating a end user's actions is only half the story. In this lecture we will look at using Iridium to verify data generated by a web application.
Regular expressions are a powerful tool for matching text. In this lecture students will learn the basics of regular expressions, and learn how to use free online tools for experimenting with matching text using regular expressions.
This lecture will wrap up the end to end test by adding verification of the data generated by the TicketMonster web application.
This lecture introduces a new way to launch Iridium using the command line.
In this lecture we'll look at how to build up a command that can be used to run Iridium in both PowerShell and Bash.
I have loved technology since my first Commodore 64, and that passion remains to this day. By day you'll find me integrating enterprise platforms with Camel, securing applications against common exploits, exposing services via RESTful interfaces, migrating infrastructure to the cloud, training my fellow developers, and refactoring legacy code. By night I'm playing with bleeding edge open source projects and contributing to the popular online developer portal DZone, and probably studying for my next exam to ensure that I am always on top of my game.
I am a 5 star published author, and have written code that Red Hat felt was worthy of being submitted for a patent. CEOs endorse my development skills.
Although I call myself a developer, I am quite comfortable administering a Linux server, managing a MySQL database, deploying infrastructure with Ansible, reconfiguring a firewall or just doing what needs to be done to get job finished.
To ensure that I am learning the industry's best practices, I push myself to gain certification in technologies that I rely on. Since 2012 I have completed one or more certifications a year, with Oracle proudly telling me "You are among the elite 1% of certified Java professionals who have gone on to achieve the Java Enterprise Architect certification."