के साथ यूनिट परीक्षण इंटरफेस मैं मोक और यूनिट परीक्षण के लिए नया हूं। मैं एक इकाई परीक्षण कर रहे हैं और यह निम्नलिखित कोड है:मोक
private Mock<IServiceAdapter> repository;
[TestInitialize]
public void Initialize()
{
repository= new Mock<IServiceAdapter>();
}
[TestMethod()]
public void SaveTest()
{
//Setup
string Name = "Name1";
string Type = "1";
string parentID = null;
repository.Setup(x => x.Save(Name , Type, parentID)).Returns("Success").Verifiable();
//Do
var result = repository.Object.Save(Name , Type, parentID);
//Assert
repository.Verify();
}
मेरे समस्या यह है कि परीक्षण हमेशा स्ट्रिंग है कि मैं रिटर्न पैरामीटर में डाल दिया, दूसरे शब्दों में वापस आ जाएगी, यह हमेशा वापस आ जाएगी "सफलता "या जो भी मैं अपनी जगह में लिखता हूं। मुझे लगता है कि यह सही नहीं है क्योंकि यह सेवा का असली व्यवहार नहीं है। कोई भी जानता है कि मैं "सेव" सेवा के वास्तविक व्यवहार को कैसे मिरर कर सकता हूं जिसे मैं परीक्षण करने की कोशिश कर रहा हूं? तो मान लें, अगर वापसी स्ट्रिंग सेवा विधि से अलग है, तो परीक्षण विफल होना चाहिए।
संपादित
ServiceAdapter इंटरफ़ेस इसकी सिर्फ एक वेब सेवा जो मैं एक बाकी सेवा की तरह फोन के लिए एक आवरण। यह एक वेब फॉर्म परियोजना है।
मैं इस पोस्ट
मैं निर्भरता इंजेक्शन के साथ एक FakeController की तरह कुछ यह काम करने के लिए बनाना चाहिए में की तरह कुछ कर रहा हूँ?
मुझे यहां कुछ याद आ रही है। मेरे पास नियंत्रक नहीं है (यह वेब रूप है)। मैं इस सवाल में और जानकारी डालूंगा। –
@ मॉर्गनसोरेन नियंत्रक सिर्फ एक उदाहरण था। यह कोई अन्य वर्ग हो सकता है जो आपके सेवा एडाप्टर का उपयोग करता है। मुझे लगता है कि वेब फॉर्म बहुत यूनिट टेस्टेबल नहीं हैं, आमतौर पर एमवीपी पैटर्न टेस्टेबल वेब फॉर्म एप्लिकेशन बनाने के लिए उपयोग किया जाता है। –
@ मॉर्गन सोरेन यहां [यूनिट-टेस्टिंग वेब फॉर्म] के बारे में प्रश्न है (http://programmers.stackexchange.com/questions/116089/is-is-possible-to-unit-test-a-web-forms-site) –