Introducing Test Driven Development in C#
Even after so many years, TDD is still one of the main buzzwords at almost every conference. This technique has proven itself to be one of the best practices out there when it comes to writing maintainable, robust, and testable code. This course covers key concepts, methods, and patterns behind TDD through concrete and practical examples in C# 7.
This course starts off with an introduction to unit tests and unit test frameworks. Basically, you will learn how to write and automate tests for your implementations. After that, we shift the paradigm and see how to write your tests before implementation itself. We explore how to add full test support to our projects, as well. Through practical examples you will witness how this technique helps us write higher-quality code. In the final sections of this course, you will learn proven methods and patterns for writing modular and testable code. The principles of TDD will help you write better and cleaner code. In addition, you’ll see how solid tests give you a new sense of confidence when you need to modify existing code, refactor, and add new features.
By the end of this course, you will have the tools you need to start building bulletproof applications, backed by an automated suite of tests to ensure quality software delivery.
About the Author
Nikola Živković is a software developer with over seven years’ experience in the industry. He earned his Master’s degree in Computer Engineering from the University of Novi Sad in 2011, but by then he was already working for several companies. At the moment he works at Vega IT Sourcing from Novi Sad. He has worked on large enterprise systems as well as on small web projects. Also, he frequently talks at meetups and conferences and he is a guest lecturer at the University of Novi Sad.
Learn How Your Software Works with Test Automation
This video gives an overview of the entire course.
The aim of the video is to learn the various types of Automation tests.
We have learnt unit test frameworks in previous video. In this video, we can use the knowledge to understand a practical example of automated unit test.
TDD – The Workflow to Bulletproof Your Code
In this video, we will compare TDD with traditional testing that is, writing only unit test for the code.
Adding Test Support to a .NET Project
The aim of the video is to understand how to create a Test project in Visual Studio and explore few tips and tricks.
The aim of the video is to understand how to create a Test project in Visual Studio Code.
In this video, we will explore various test arranging patterns and naming conventions.
The aim of the video is to explore code coverage and how it can be checked using Visual Studio tools and ReSharper.
The Art of Writing Testable Code
The aim of the video is to explore the shortcomings of using the new operator.
The aim of the video is to explore the shortcomings of using static methods.
Testing Modular Code Via Mocking
In this video, we explore what is mocking and how to use mocking objects in tests.
In this video, you will learn how to create mocking objects manually and how to use them in your tests.
In this video, we will learn how to implement mock objects using Moq framework.
Modularizing Code and Inversion of Control
In this video, we will learn some creational design patterns that can help us with our testing.
Dependency Injection Pattern – The Holy Grail of Modular Design
The aim of the video is to understand what dependency injection containers are and will explore the various dependency injection containers available in the market.
The aim of the video is to understand the best practices when it comes to using dependency injection containers.
Concrete Examples of Common Abstractions
In this video, we will see an implementation of repository pattern using entity framework.
In this video, service layer is explained.