मैं विजुअल स्टूडियो 11 में माइक्रोसॉफ्ट फॉक्स के बीटा का उपयोग कर रहा हूं। मैं कैसे सत्यापित कर सकता हूं कि मेरे सिस्टम द्वारा निर्भरता की विधि को परीक्षण के तहत बुलाया गया था?मैं कैसे सत्यापित कर सकता हूं कि एक माइक्रोसॉफ्ट फॉक्स (बीटा) स्टब/शिम कहा जाता था (जैसे राइनो मोक्स में AssertWasCalled)?
उत्तर
चूंकि कार्यक्षमता को Microsoft Fakes Beta में सत्यापित नहीं किया गया है, तो नीचे दिया गया कोड एक निर्भरता है कि निर्भरता पर कोई विधि कहलाती है या नहीं। पैरामीटर मानों या उचित कॉल की अन्य स्थितियों का परीक्षण करने के लिए आप true
परीक्षण को बढ़ा सकते हैं।
टेस्ट:
[TestMethod]
public void TestMethod1()
{
var secondDoItCalled = false;
var secondStub = new Fakes.ShimSecond();
secondStub.DoIt =() => { secondDoItCalled = true; };
var first = new First(secondStub);
first.DoIt();
Assert.IsTrue(secondDoItCalled);
}
क्लास:
public class First
{
readonly Second _second;
public First(Second second) { _second = second; }
public void DoIt() {
//_second.DoIt();
}
}
public class Second {public void DoIt(){}}
टिप्पणी हटाएं ऊपर लाइन परीक्षण पास देखने के लिए।
माइक्रोसॉफ्ट फॉक्स फ्रेमवर्क के साथ व्यवहारिक सत्यापन करने के लिए आपके पास एक अन्य विकल्प है जो Microsoft.QualityTools.Testing.Fakes.Stubs नामस्थान में शामिल StubObserver क्लास का उपयोग करना है। ढांचे का उपयोग करके, आप अपनी निर्भरता के लिए एक स्टब उत्पन्न करते हैं। फिर अपने स्टब पर आप InstanceObserver प्रॉपर्टी को एक नए स्टब ऑब्सर्वर पर सेट कर सकते हैं। StubObserver क्लास का उपयोग करके, आप अपनी निर्भरता में किए गए विधि कॉल "क्वेरी" कर सकते हैं। आपका परीक्षा पद्धति कुछ ऐसा दिखाई देगा नीचे
//Arrange
var dependency = new StubIDependency { InstanceObserver = new StubObserver() };
var sut = new SystemClass(dependency);
// Act
sut.DoSomething();
// Assert
var observer = (StubObserver)dependency.InstanceObserver;
Assert.IsTrue(
observer.GetCalls().Any(call => call.StubbedMethod.Name == "DoSomething"));
इस पोस्ट के लिए एक नज़र: http://www.peterprovost.org/blog/2012/11/29/visual-studio-2012-fakes-part-3/
चीयर्स
- 1. राइनो मोक्स - कैसे एक मॉक विधि को जोर देने के लिए एन-बार कहा जाता था?
- 2. Moq - सत्यापित करें कि कोई तरीकों कहा जाता था
- 3. राइनो मोक्स
- 4. राइनो मोक्स
- 5. राइनो मोक्स
- 6. मैं कैसे एक विधि को सत्यापित कर सकता हूं जिसे मोक के साथ बिल्कुल एक बार कहा जाता था?
- 7. राइनो मोक्स: "सत्यापित करें" बनाम "जोर दें"
- 8. राइनो मोक्स - AssertWasCalled: गलत तर्कों के बारे में अस्पष्ट डायग्नोस्टिक संदेश को कैसे सुधारें
- 9. राइनो मोक्स
- 10. मैं कैसे सुनिश्चित कर सकता हूं कि बच्चे में एक सुपर विधि कहा जाता है?
- 11. राइनो मोक्स: मॉकिंग HttpRequestBase.Files
- 12. मैं राइनो मोक्स में एक Func <T,TResult> कैसे लगा सकता हूं?
- 13. राइनो मोक्स, VerifyAllExpectations
- 14. राइनो कॉमन्स और राइनो मोक्स संदर्भ दस्तावेज़?
- 15. राइनो Mocks AssertWasCalled (कई बार) एएए
- 16. राइनो मोक्स आंशिक मॉक
- 17. राइनो मोक्स और कॉम्पैक्ट फ्रेमवर्क
- 18. राइनो मोक्स एएए त्वरित प्रारंभ?
- 19. राइनो Mocks - स्टब .Expect बनाम .AssertWasCalled
- 20. एक संपत्ति को रगड़ना राइनो मोक्स का उपयोग कर
- 21. राइनो मोक्स - Arg.Matchches का उपयोग
- 22. मैं माइक्रोसॉफ्ट फॉक्स असेंबली को आसानी से कैसे बदल सकता हूं?
- 23. क्या मैं राइनो-मोक्स 3.6 में एएए सिंटैक्स के साथ विधि कॉल ऑर्डर का परीक्षण कर सकता हूं?
- 24. राइनो मोक्स: दोहराना। एक बार() काम नहीं कर रहा है?
- 25. राइनो मोक्स दोहराना क्या है?
- 26. राइनो मोक्स में आंशिक तर्क मिलान
- 27. PHP - मैं कैसे जांच सकता हूं कि वापसी() को शामिल() 'डी फ़ाइल से कहा गया था)?
- 28. कोड विश्लेषण लेने कि एक तर्क कहा जाता विधि में मान्य किया गया था
- 29. मैं पर्ल में तिथियों को कैसे सत्यापित कर सकता हूं?
- 30. राइनो मोक्स: स्टब और मोक्स। अंतर क्या है
यह लागू किसी भी तरह 'AllInstances' द्वारा shimming के मामले को है? – SerG