Introduction
In this module, you'll add functional tests to the pipeline. These tests verify an application's behavior.
In the Create a multistage pipeline by using Azure Pipelines module, you helped the Tailspin Toys web team design and build a multistage release pipeline. The team uses the pipeline to move changes through a series of stages. Changes move through the Dev stage, the Test stage, and finally the Staging stage, which resembles a production environment.
The stages that you and the team defined provide the overall shape of the pipeline. But you can add more to each stage. For example, in the Test stage, Amita still tests the web application manually as she always has. When she's satisfied, she manually promotes the application to Staging. In Staging, management reviews the new features and decides whether to make the release publicly available.
In the Run quality tests in your build pipeline using Azure Pipelines module, you incorporated unit and code coverage tests into the build process. These tests help avoid regression bugs and ensure that the code meets the company's standards for quality and style. But what kinds of tests can you run after a service is operational and deployed to an environment?
Learning objectives
After completing this module, you'll be able to:
- Define the role of functional tests and identify some popular kinds of tests you can run.
- Map manual testing steps to automated test cases.
- Run automated UI tests locally and in the pipeline using Selenium.
Prerequisites
The modules in this learning path form a progression. To follow the progression from the beginning, complete these learning paths first:
We also recommend that you start at the beginning of the Deploy applications with Azure DevOps learning path.
If you want to go through just this module, you need to set up a development environment on your Windows, macOS, or Linux system. You need these assets:
- An Azure subscription
- An Azure DevOps organization with access to parallel jobs. If your organization does not have access to parallel jobs, you can request parallel jobs for free for public or private projects using this form. Your request will take 2-3 business days.
- A GitHub account
- Visual Studio Code
- .NET 6.0 SDK
- Git
You can get started with Azure and Azure DevOps for free. You don't need an Azure subscription to work with Azure DevOps, but here you'll use Azure DevOps to deploy to resources that exist in your Azure subscription.
This environment lets you complete the exercises in this module and future modules. You can also use it to apply your new skills to your own projects.
Note
Azure Pipelines support a vast array of languages and application types. In this module, you'll be working with a .NET application but you can apply the patterns you learn here to your own projects that use your favorite programming languages and frameworks.
Meet the team
You met the Space Game web team at Tailspin Toys in previous modules. As a refresher, here's who you'll work with in this module.
Andy is the development lead.
Amita is in QA.
Tim is in operations.
Mara just joined as a developer and reports to Andy.
Mara has prior experience with DevOps. She's helping the team adopt a more automated process that uses Azure DevOps.