शुरुआती लोगों के लिए C# परीक्षण: 2024 में कहाँ से शुरू करें

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

C# परीक्षण डरावना क्यों नहीं है, बल्कि फायदेमंद है?

\n\n

यदि आप अभी C# में अपनी यात्रा शुरू कर रहे हैं और सुना है कि "एक अच्छा डेवलपर हमेशा टेस्ट लिखता है", लेकिन आपको पता नहीं है कि इस जानवर के पास कैसे जाएं - तो आप सही जगह पर आए हैं। कोड का परीक्षण अक्सर शुरुआती लोगों को डराता है: ऐसा लगता है कि यह कुछ जटिल है, जिसके लिए आर्किटेक्चर के गहन ज्ञान और ढेर सारी सेटिंग्स की आवश्यकता होती है। वास्तव में, C# में टेस्ट लिखना एक ऐसा कौशल है जिसे एक शाम में सीखा जा सकता है, और इसका लाभ वर्षों तक रहेगा।

\n\n

कल्पना करें कि आपने हजारों भागों से एक जटिल मशीन बनाई है। क्या आप प्रत्येक भाग की जाँच किए बिना इसे पूरी शक्ति से चालू करेंगे? प्रोग्राम के साथ भी ऐसा ही है: C# यूनिट-टेस्टिंग आपको पूरे सिस्टम के production में ढहने की प्रतीक्षा किए बिना, आपके कोड के प्रत्येक "पेंच" को अलग-अलग जाँचने की अनुमति देता है। इस लेख में हम शून्य से C# परीक्षण पर चर्चा करेंगे: फ्रेमवर्क चुनने से लेकर पहला सार्थक टेस्ट लिखने तक। चलिए शुरू करते हैं!

\n\n

C# परीक्षण कहाँ से शुरू करें: वातावरण तैयार करना

\n\n

कोड लिखने से पहले, आइए सुनिश्चित करें कि आपके पास सब कुछ आवश्यक है। C# परीक्षण के लिए आपको आवश्यकता होगी:

\n
    \n
  • Visual Studio 2022 (Community edition — मुफ्त) या JetBrains Rider (यदि लाइसेंस है)।
  • \n
  • .NET SDK (संस्करण 6, 7 या 8 — कोई भी LTS काम करेगा)।
  • \n
  • C# में OOP की बुनियादी समझ: क्लास, मेथड, इंटरफेस।
  • \n
\n\n

जब वातावरण तैयार हो जाए, तो एक नया प्रोजेक्ट बनाएं। मैं सुझाव देता हूं कि कोड को तुरंत दो प्रोजेक्ट्स में विभाजित करें: मुख्य (आपकी लाइब्रेरी या एप्लिकेशन) और टेस्ट प्रोजेक्ट। Visual Studio में यह कमांड से किया जाता है: File → New → Project → xUnit Test Project (.NET Core) या NUnit Test Project। लेकिन हम थोड़ा आगे बढ़ेंगे और दोनों लोकप्रिय टूल्स पर चर्चा करेंगे।

\n\n

फ्रेमवर्क चुनना: NUnit बनाम xUnit

\n\n

C# की दुनिया में मॉड्यूलर टेस्ट लिखने के लिए दो मुख्य "खिलाड़ी" हैं: NUnit और xUnit। दोनों बढ़िया काम करते हैं, लेकिन कुछ बारीकियाँ हैं:

\n\n
    \n
  • NUnit — क्लासिक, Java (JUnit का एनालॉग) से आया है। इसमें [Test], [SetUp], [TearDown] एट्रीब्यूट हैं। शुरुआती लोगों के लिए बहुत स्पष्ट है।
  • \n
  • xUnit — ASP.NET के निर्माताओं से आधुनिक फ्रेमवर्क। यह [Fact] और [Theory] का उपयोग करता है। इसे अधिक "स्वच्छ" माना जाता है और .NET Core के साथ बेहतर एकीकृत होता है।
  • \n
\n\n

शुरुआती लोगों के लिए मैं xUnit की सलाह देता हूं — यह सरल है, इसमें अतिरिक्त एट्रीब्यूट की आवश्यकता नहीं है, और इसे समझना आसान है। लेकिन अगर आपकी टीम NUnit का उपयोग करती है — तो कोई बात नहीं, हम दोनों विकल्पों पर विचार करेंगे।

\n\n

C# पर पहला यूनिट-टेस्ट: कोड लिखना

\n\n

मान लीजिए, हमारे पास एक सरल कैलकुलेटर क्लास है:

\n\n
public class Calculator\n{\n    public int Add(int a, int b) => a + b;\n    \n    public int Divide(int a, int b)\n    {\n        if (b == 0)\n            throw new DivideByZeroException("शून्य से भाग देना मना है!");\n        return a / b;\n    }\n}
\n\n

अब इस क्लास के लिए टेस्ट लिखते हैं। एक टेस्ट प्रोजेक्ट (xUnit) बनाएं और मुख्य प्रोजेक्ट का संदर्भ जोड़ें।

\n\n

xUnit के साथ टेस्ट का उदाहरण

\n\n
using Xunit;\n\npublic class CalculatorTests\n{\n    [Fact]\n    public void Add_ShouldReturnSum_WhenTwoNumbers()\n    {\n        // Arrange\n        var calculator = new Calculator();\n        \n        // Act\n        var result = calculator.Add(3, 5);\n        \n        // Assert\n        Assert.Equal(8, result);\n    }\n    \n    [Fact]\n    public void Divide_ShouldThrowException_WhenDivideByZero()\n    {\n        var calculator = new Calculator();\n        \n        Assert.Throws<DivideByZeroException>(() => calculator.Divide(10, 0));\n    }\n}
\n\n

Arrange-Act-Assert (AAA) संरचना पर ध्यान दें। यह टेस्ट लिखने का स्वर्ण मानक है: पहले डेटा तैयार करें, फिर कार्रवाई करें, फिर परिणाम की जाँच करें। इस पैटर्न को याद रखें — यह आपको अराजकता से बचाएगा।

ब्लॉग

पुस्तक अनुशंसाएँ