सरल अंग्रेजी में, Moq एक पुस्तकालय जो जब आप अपने प्रोजेक्ट में शामिल आप आसान में यूनिट परीक्षण करने के लिए शक्ति देने है तौर तरीका। क्यों? क्योंकि एक समारोह दूसरे को कॉल कर सकता है, फिर दूसरा और इसी तरह। लेकिन वास्तव में क्या जरूरत है, केवल पहली कॉल से वापसी मूल्य अगले पंक्ति पर आगे बढ़ने के लिए। Moq उस विधि की वास्तविक कॉल को अनदेखा करने में मदद करता है और इसके बदले आप उस कार्य को वापस कर रहे हैं जो वापस लौटा रहा था। और कोड की सभी पंक्तियों को निष्पादित करने के बाद सत्यापित करें, जो आप चाहते हैं वह वह है जो आपको मिलता है या नहीं। बहुत बहुत अंग्रेजी, इसलिए यहाँ एक उदाहरण है:
String Somethod()
{
IHelper help = new IHelper();
String first = help.firstcall();
String second= secondcall(first);
return second;
}
अब, यहाँ first
secondcall()
के लिए की जरूरत है, लेकिन आप वास्तव में कुछ अन्य परत में help.firstcall()
यह के रूप में फोन नहीं कर सकते हैं। तो मजाक किया जाता है, faking है कि विधि बुलाया गया था:
[TestMethod]
public void SomeMethod_TestSecond
{
mockedIHelper.Setup(x=>x.firstcall()).Returns("Whatever i want");
}
यहाँ, विधि कॉल faking के रूप में लगता है, SetUP
, हम बस Returns
में रुचि रखते हैं।
स्रोत
2013-08-14 19:13:20
उत्कृष्ट धन्यवाद ... मुझे लगता है कि मुझे यूनिट परीक्षण के बारे में और भी पढ़ना होगा - प्रशंसा धन्यवाद – leen3o
MOQ व्यापारिक व्यापार में भी एक शब्द है "न्यूनतम आदेश मात्रा": एक उत्पाद जो ऑर्डर पर $ 100 खर्च करता है यदि आप दस लाख यूनिट खरीदते हैं तो 5000 पीसी की मात्रा $ 20 जितनी कम हो सकती है। मुझे कंप्यूटर विज्ञान के साथ कुछ लेना देना नहीं है! :) –
अधिक सही ढंग से, यह एक अलगाव ढांचा है, क्योंकि सभी नकली झटके नहीं हैं। – StuperUser