आप सकता है इकाई परीक्षण इस वस्तु है, लेकिन यह के रूप में यह आवश्यकता नहीं करने के लिए इतना आसान है। परीक्षण की तरह कुछ (NUnit उदाहरण)
[Test]
public void TestRuleViolationConstructorWithErrorMessageParameterSetsErrorMessageProperty() {
// Arrange
var errorMessage = "An error message";
// Act
var ruleViolation = new RuleViolation(errorMessage);
// Assert
Assert.AreEqual(errorMessage, ruleViolation.ErrorMessage);
}
वहाँ इस तरह के परीक्षण लेखन के लिए कम महत्व है हो सकता है, हालांकि, आप परीक्षण कर रहे हैं के रूप में जो .NET ढांचे के गुणों को सही ढंग से काम करते हैं। आम तौर पर आप इस अधिकार को प्राप्त करने के लिए माइक्रोसॉफ्ट पर भरोसा कर सकते हैं :-)
मॉकिंग के संबंध में, यह तब उपयोगी होता है जब परीक्षण के तहत आपकी कक्षा में निर्भरता हो, शायद आपके स्वयं के आवेदन में किसी अन्य वर्ग पर, या ढांचे से एक प्रकार पर। मॉकिंग फ्रेमवर्क आपको कोड में दृढ़ता से निर्भरता के निर्माण की परेशानी के बिना निर्भरता पर विधियों और गुणों को कॉल करने की अनुमति देता है, और इसके बजाय आपको गुणों के लिए परिभाषित मूल्यों को इंजेक्ट करने, विधियों के लिए मूल्यों को वापस करने की इजाजत देता है। Moq एक उत्कृष्ट ढांचा है, और
[Test]
public void TestCalculateReturnsBasicRateTaxForMiddleIncome() {
// Arrange
// TaxPolicy is a dependency that we need to manipulate.
var policy = new Mock<TaxPolicy>();
bar.Setup(x => x.BasicRate.Returns(0.22d));
var taxCalculator = new TaxCalculator();
// Act
// Calculate takes a TaxPolicy and an annual income.
var result = taxCalculator.Calculate(policy.Object, 25000);
// Assert
// Basic Rate tax is 22%, which is 5500 of 25000.
Assert.AreEqual(5500, result);
}
TaxPolicy
सत्यापित करें कि यह सही ढंग से कार्य अपने आप ही स्थिरता में परीक्षण इकाई होगा: निर्भरता के साथ एक बुनियादी वर्ग के लिए परीक्षण कुछ इस तरह दिखेगा। यहां, हम परीक्षण करना चाहते हैं कि TaxCalculator
सही तरीके से काम करता है, और इसलिए हम अपने परीक्षणों को सरल बनाने के लिए TaxPolicy
ऑब्जेक्ट का नकल करते हैं; ऐसा करने में, हम TaxPolicy
की बिट्स के व्यवहार को निर्दिष्ट कर सकते हैं जिसमें हम रुचि रखते हैं। इसके बिना, हमें हाथ से लुढ़का हुआ मॉक्स/स्टब्स/नकली बनाने की आवश्यकता होगी, या TaxPolicy
के वास्तविक उदाहरणों को पारित करने की आवश्यकता होगी।
हालांकि, इसके मुकाबले मोक के लिए और अधिक है; यह देखने के लिए quick-start tutorial देखें कि यह क्या कर सकता है।
आप कैसे अगर सेटर निजी है देखने के लिए जाँच के बारे में मेरी अद्यतन देखें। – kemiller2002