Complete Guide to Unit Testing in .NET Core (NUnit & XUnit)
What you'll learn
- Learn unit testing from scratch
- What unit tests are for and how they are written
- How to set up and use the NUnit and XUnit test framework
- Run and Debug Unit Tests
- Write Mocks with Mocking Framework (MOQ)
- Implement unit testing in N-tier real world web application project using XUnit
- Basic knowledge of C#
- Basic knowledge of .NET Core and EF Core (Basic CRUD application for real world project example)
"Production application can break with a simple change that was unexpected to alter any other functionality" Sounds familiar right?!
Good news is, with well written unit test's this would be a thing of the past.
Automated testing has been a buzz word for a while but many times developers struggle to find a course that covers the fundamentals of unit testing while implementing what they learned in a real world project! That is the main focus of this course.
This course is all about writing effective unit tests using C# programming language and NUnit /XUnit as a unit testing framework. Along the way, we will learn the concepts related to unit testing. Today unit testing is an absolutely required skill from any professional developer. Companies expect from developers to know how to write unit tests using best practices. This course will help you setup a solid foundation with a real world example and how unit testing could be done in a .NET Core Web application with EF Core.
What is unit testing?
UNIT TESTING is a type of software testing where individual units or components of a software are tested. The purpose is to validate that each unit of the software code performs as expected.
Why learn unit testing?
Why should I learn unit testing? Why spend extra time to write code to test? Is manual testing not sufficient?
These are pretty common questions and I will answer them all but most of the times manual testing is much more time consuming and it is not as through as unit test. Unit tests take time once to write and can be executed for free every time!
As application grows, the cost of manual testing grows exponentially. And manual testing will never give 100% confidence with all the edge cases.. Automated tests help you to catch the bugs while it is in development phase, because of which they would be easier to resolve.
Will it help me with job?
Many times, skills comes with that will that skill help me achieve professionally. Unit testing is a very valuable skill with the current development cycle. It is a must have skill in most organizations for senior developers.
By end of this course you will have a solid foundation with unit testing. Along with a solid foundation we will implement what we learned in real world N-Tier web application with .NET 6 and EF Core.
Who this course is for:
- .NET developer who wants to build better quality software with fewer bugs
- .NET developer who wants to learn unit testing
- .NET developer who wants to see unit testing in real world application
I am a passionate and creative software engineer with a strong focus on simplicity and thorough details. I have been programming since high school and I have been involved with multiple web and desktop using .net.
I have a master's of science degree in computer science and a Bachelor of Computer Engineering. I also have many years of experience with .NET C# and .NET MVC. I enjoy teaching along with my full-time job.
For me, the most important part about writing and teaching code is to eliminate the hardships of every student out there who is willing to learn but cannot find adequate resource which is easy to understand. Coding is a way to be creative and have fun!