Testing Automation: The Big Picture

Automated tests are crucial to reducing costs and releasing features quickly. This course will teach you how automated tests benefit the business, the different types of tests that can be created, and how they fit within wider business processes.
Course info
Rating
(59)
Level
Beginner
Updated
Aug 8, 2017
Duration
1h 6m
Table of contents
Description
Course info
Rating
(59)
Level
Beginner
Updated
Aug 8, 2017
Duration
1h 6m
Description

Software can be costly to develop, error-prone, and hard to release to production. In this course, Testing Automation: The Big Picture, you'll learn the different types of automated tests that can be created, the various trade-offs involved, and how it can benefit you. First, you'll explore the potential business value of automated tests. Next, you'll cover the difference between unit integration and other types of tests, along with understanding how many of each test to write. Finally, you'll discover how tests fit in with continuous integration and deployment. When you're finished with this course, you'll have a solid understanding of how automated tests can be an enabler for increased business value, and how to start implementing or refining the use of automated tests within your organization.

About the author
About the author

With over 15 years experience, Jason Roberts is a Microsoft .NET MVP, freelance developer, and author.

More from the author
Working with Files and Streams in C#
Intermediate
3h 13m
Oct 12, 2018
Error Handling in C# with Exceptions
Intermediate
1h 37m
Aug 6, 2018
More courses by Jason Roberts
Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hi everyone, my name's Jason Roberts, welcome to my course, Testing Automation: The Big Picture. I'm a Microsoft MVP, freelance developer, and author. In this course, we're going to learn what automated testing is, the types of test we can write, and how testing automation fits in with the rest of the business. Some of the major topics that we'll cover in this course include what the potential business value of automated tests are, the difference between units, integration, and other types of tests, how many of each type of test to write, and how they fit in with continuous integration and deployment. By the end of this course you'll understand how automated tests can reduce costs, create happier teams and end users, and improve long term delivery speeds. No prior knowledge of testing automation is required before starting this course, nor is any platform, language, or eco system specific knowledge. I hope you'll join me on this journey with the Testing Automation: The Big Picture course, at Pluralsight.

The Business Value of Automated Tests
Hi everyone, my name's Jason Roberts, welcome to my course, Testing Automation: The Big Picture. In this first module, we're going to get an overview of what testing automation is, and also the business value that it may bring. So in this first module we're going to start off by looking at exactly what automated testing is. We'll then move on to discuss what the high-level benefits are of automated testing, before discussing the total cost of ownership of software. In addition to the potential monetary benefit, we'll also discuss the happiness factor that automated tests can help us deliver, and we'll discuss automated testing in the wider business context. While automated tests can bring considerable value to the business, we'll also discuss some of the considerations to bear in mind when using automated tests, and finally, we'll discuss the difference between short term long term delivery speeds, and how automated tests can help us here. So, let's kick off this module with a discussion of what automated testing is.

Understanding the Different Types of Automated Tests
Hi, welcome back. In the previous module we got an understanding of the business benefits of automated tests. In this module, we'll look at automated tests in a little more depth, and understand the different types of automated tests we can write. So we'll start off in this module by looking at the different types of automated tests we can write. We'll learn about unit tests, integration tests, subcutaneous tests, and functional user interface tests. We'll see how each of these types of test offer different characteristics when it comes to test breadth or test depth, and we'll learn about the different logical phases of an automated test. We'll get a brief overview of mock objects, and how we can use them to isolate the code that we want to test, and we'll learn how data driven tests can reduce the overall amount of test code we need to write. We'll learn that we can make our tests business-readable, so we can bridge the communication gap that can often occur between the development team and the business or stake holders. So if we have all of these different types of tests available to us, how do we know how many of each type of test to create? We'll learn a couple of different ways of thinking about this. So we'll learn about the classic testing pyramid model, and also how we can go beyond this initial pyramid model and decide which type of tests to create. Finally, we'll round off this module by looking at a few of the characteristics of good automated tests. So let's kick off this module and we'll start to look at unit tests.

Automated Testing Within the Software Development Process
Hi, welcome back. In this module, we're going to be looking at automated testing within the software development process. So we're going to start off by seeing how we can complement our automated tests with manual testing, and we're going to learn about a specific form of manual testing called exploratory testing. We'll also learn a few different ways that we can get our QA specialists involved in the wider software development process. Next we'll learn how our automated tests fit in with the continuous integration process, and also the role of automated tests in enabling continuous delivery. We'll get an overview of how automated testing can be accomplished with test driven development, and we'll also briefly cover some advanced testing tools and techniques. And we'll wrap up the course with some further learning resources. So let's kick off this module by seeing how we can compliment automated tests with manual testing.