Friday, 28 March 2025

Master C# Unit Testing with xUnit - A Beginner's Guide

 

Master C# Unit Testing with xUnit – A Beginner’s Guide

Are you looking to improve your C# skills and write better, more reliable code? Unit testing is a game-changer, and in my latest YouTube video, I’ll walk you through how to use xUnit to write and run unit tests effectively in C#!

🔥 What You’ll Learn in This Video

✅ Setting up xUnit in your C# project
✅ Writing your first unit test
✅ Running and debugging tests
✅ Best practices for cleaner, more efficient tests

Whether you’re new to unit testing or just looking to refine your skills, this video is packed with valuable insights to help you level up your development game.

📺 Watch now: Master C# Unit Testing with xUnit


Don’t forget to like, comment, and subscribe if you find it helpful! 🚀 #CSharp #xUnit #UnitTesting

Please find the code used in this video below.

using FizzBuzzLibrary;

namespace FizzBuzz.Tests
{
    public class FizzBuzzTest
    {
        [Theory]
        [InlineData(15, "FizzBuzz")]
        [InlineData(75, "FizzBuzz")]
        [InlineData(300, "FizzBuzz")]
        [InlineData(30, "FizzBuzz")]
        public void DivisibleBy3And5(int number, string expected)
        {
            //Act
            string actual = FizzBuzzLibrary.FizzBuzz.GetFizzBuzz(number);

            //Assert
            Assert.Equal(expected, actual);

        }
        

        [Theory]
        [InlineData(3, "Fizz")]
        [InlineData(6, "Fizz")]
        [InlineData(9, "Fizz")]
        [InlineData(27, "Fizz")]
        public void DivisibleBy3(int number, string expected)
        {
            //Act
            string actual = FizzBuzzLibrary.FizzBuzz.GetFizzBuzz(number);

            //Assert
            Assert.Equal(expected, actual);

        }

        [Theory]
        [InlineData(5, "Buzz")]
        [InlineData(20, "Buzz")]
        [InlineData(50, "Buzz")]
        [InlineData(25, "Buzz")]
        public void DivisibleBy5(int number, string expected)
        {
            //Act
            string actual = FizzBuzzLibrary.FizzBuzz.GetFizzBuzz(number);

            //Assert
            Assert.Equal(expected, actual);

        }

        [Theory]
        [InlineData(1, "1")]
        [InlineData(2, "2")]
        [InlineData(7, "7")]
        [InlineData(17, "17")]
        public void NotDivisibleBy3and5(int number, string expected)
        {
            //Act
            string actual = FizzBuzzLibrary.FizzBuzz.GetFizzBuzz(number);

            //Assert
            Assert.Equal(expected, actual);
        }

    }
}

//Arrange
//Act
//Assert