Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Introduction to TDD in C#
Rating: 4.2 out of 5(543 ratings)
16,464 students

Introduction to TDD in C#

Learn test driven development: make code testable, robust and maintainable. Bring unit testing skills to the next level.
Created byEngineer Spock
Last updated 7/2020
English

What you'll learn

  • Practice TDD in your daily job

Course content

2 sections30 lectures3h 13m total length
  • Download Source Code0:02
  • Join Chat in Telegram0:02
  • Outline1:06
  • Why we need TDD?16:18
  • What is TDD?5:00
  • Red / Green / Refactor4:16
  • Three Laws of TDD1:42
  • Changing Requirements and the Safety Net5:23

    Identify design smells such as rigidity, fragility, immobility, viscosity, and needless complexity; apply SOLID principles to keep tests clean. Rely on automated test suite as a safety net for changes.

  • F.I.R.S.T.2:48
  • Code Coverage2:19

    Code coverage shows how much code is exercised by unit tests, displayed in Visual Studio. It reaches 70–80 percent, but more coverage costs effort and does not guarantee reliability.

  • Types of Tests and TDD4:04
  • Testing Frameworks and Tools5:06
  • When TDD Fails?2:46
  • Conclusion2:02

Requirements

  • You should already be familiar with the basics of C#
  • You should already be familiar with the basics of unit testing

Description

Today unit testing is the absolutely required skill which is required from any professional developer. Companies expect from developers to know how to write unit tests including all the most important topics such as mocking and test driven development (TDD in short).

This course is all about practicing TDD using C# programming language and NUnit as a unit testing framework. Along the way, we will learn the concepts related to unit testing. This course does not cover all the features of NUnit. This course is way more interesting.

Learning unit testing and TDD puts a powerful and very useful tool at your fingertips. Being familiar with unit testing and TDD you can write reliable and maintainable applications. It is very hard to lead a project which is not covered by unit tests.

Content and Overview   

This course is primarily aimed at developers who’re already familiar with the basics of unit testing and dependency injection. Some experience in C# programming is required. 

Theory is dead without practice, so starting from the second section, you’ll see tons of programming sessions where I’ll demonstrate how to implement generating of Fibonacci numbers, FizzBuzz, parsing of roman numerals, updateable spin synchronization primitives, tic-tac-toe or crosses and noughts game and game in sticks. You’ll also learn:   

  • How a regular agile development process looks like   

  • That you need to learn shortcuts to practice TDD more smoothly   

  • Three Main TDD techniques: faking, triangulation and obvious implementation   

  • Which tests to write first   

  • How to start writing a test in a TDD manner

Here is my Teaching Approach -

No fluff, no ranting, no beating the air. I respect your time. The course material is succinct, yet comprehensive. All important concepts are covered. Particularly important topics are covered in-depth. For absolute beginners, I offer my help on Skype absolutely free, if requested.

Take this course, and you will be satisfied.

Who this course is for:

  • Any developer who wants to improve professional programming skills