Test-Driven Development with .NET 8+ & Visual Studio 2022

Course Syllabus

Benjamin Day Consulting Logo

Benjamin Day Consulting, Inc.
17 Roberts St #2
Brookline, MA 02445
617-645-0188
https://benday.com


Course Overview

Unit testing enables you and your team to write high-quality software with fewer bugs. It also allows you to say with confidence when something in your code is working and – more importantly – know when it is not working. Test-Driven Development (TDD) is a methodology for writing software that ensures that your application and your application code are testable and tested from the very start.

This course gives students hands-on experience and knowledge for writing and maintaining applications using Test-Driven Development with modern .NET and Visual Studio 2022. Throughout the course we discuss the options, process, and motivations for unit testing and TDD and reemphasize these concepts using hands-on labs.

What You'll Learn

TDD Fundamentals & Methodology

Unit Testing Frameworks & Tools

Creating and Writing Unit Tests

Designing Applications for Testability

Testing Different Application Layers

ASP.NET Core Testing

Database and Persistence Testing

Business Logic Testing

Mocking and Test Doubles

Advanced Testing Scenarios

Integration with DevOps

Additional Testing Types

Lab Exercises

Throughout the course, students will work on hands-on exercises including:

Prerequisites

Course Details

Technologies: .NET 8+, Visual Studio 2022, xUnit.NET, Moq, Entity Framework Core
Programming Languages: Primarily C#
Duration: 2 days, 9am to 5pm
Format: Interactive lectures with extensive hands-on labs

Lab Machine Requirements

Operating System: Windows 10/11 or macOS (latest versions)
Memory: 8GB RAM minimum, 16GB recommended
Required Applications:

Network Requirements: Internet connection for NuGet package restoration

Student Permissions: Administrative rights on laptop helpful for installing packages

Course Outcomes

Upon completion of this course, students will be able to:

Customization Options

This course can be customized for your organization's specific needs:


Course content is regularly updated to reflect the latest .NET and Visual Studio capabilities, testing frameworks, and industry best practices.