C#:
כתיבת בדיקות

איך לעשות:

מפתחי C# בעיקר משתמשים במסגרות NUnit או xUnit לכתיבת בדיקות בשל גמישותם וערכת התכונות הרחבה שלהם. הנה דוגמה בסיסית בשימוש ב-NUnit לבדיקת פונקציה פשוטה של חיבור:

  1. התקן את NUnit ו-NUnit3TestAdapter דרך NuGet Package Manager או ה-.NET CLI:
dotnet add package NUnit
dotnet add package NUnit3TestAdapter
  1. צור פרויקט של ספריית מחלקות ב-C# אם לא עשית זאת כבר.

  2. כתוב פונקציה פשוטה לבדיקה. לדוגמה, שיטת חיבור במחלקה בשם Calculator:

public class Calculator
{
    public int Add(int a, int b)
    {
        return a + b;
    }
}
  1. כתוב מחלקת בדיקה בשימוש ב-NUnit:
using NUnit.Framework;

namespace CalculatorTests
{
    [TestFixture]
    public class CalculatorTests
    {
        [Test]
        public void Add_AddsTwoIntegers_ReturnsCorrectSum()
        {
            // Arrange
            var calculator = new Calculator();
            int expected = 5;

            // Act
            int actual = calculator.Add(2, 3);

            // Assert
            Assert.AreEqual(expected, actual);
        }
    }
}
  1. הרץ את הבדיקה באמצעות כלי ההרצה של ה-IDE שלך או ה-.NET CLI:
dotnet test

פלט דוגמה:

בהנחה שהבדיקה שלך עוברת, אתה אמור לראות פלט דומה לזה:

Test Run Successful.
Total tests: 1
     Passed: 1
 Total time: 1.2345 Seconds

שימוש ב-xUnit:

אם אתה מעדיף את xUnit, ההתקנה דומה ל-NUnit. הנה איך תכתוב מחדש את דוגמת הבדיקה עבור המחלקה Calculator בשימוש ב-xUnit:

  1. התקן את xUnit ו-xUnit.runner.visualstudio:
dotnet add package xUnit
dotnet add package xUnit.runner.visualstudio
  1. כתוב מחלקת בדיקה בשימוש ב-xUnit:
using Xunit;

namespace CalculatorTests
{
    public class CalculatorTests
    {
        [Fact]
        public void Add_AddsTwoIntegers_ReturnsCorrectSum()
        {
            // Arrange
            var calculator = new Calculator();
            int expected = 5;

            // Act
            int actual = calculator.Add(2, 3);

            // Assert
            Assert.Equal(expected, actual);
        }
    }
}
  1. הרץ את הבדיקה באמצעות ה-.NET CLI או כלי ההרצה המשולב של ה-IDE שלך.

כל אחת ממסגרות NUnit ו-xUnit מספקת תכונות עוצמתיות לבדיקות מפרמטריות, פעולות הקמה/פירוק, וארגון בדיקות לקטגוריות, הופכות אותן לכלים בלתי נפרדים בארגז הכלים של המתכנת C# לשם ודאות איכות ופונקציונליות הקוד.