Avatar ·

यूनिट टेस्टिंग में Go में फंक्शन के लिए मॉक (mock) सही तरीके से कैसे बनाएं?

नमस्ते! मैंने Go सीखना शुरू किया है और अपने प्रोजेक्ट के लिए यूनिट टेस्ट लिखने की कोशिश कर रहा हूँ। मुझे एक समस्या का सामना करना पड़ा: मेरे पास एक फंक्शन है जो बाहरी सर्विस को कॉल करता है (जैसे, ईमेल भेजना या HTTP रिक्वेस्ट करना)। टेस्ट में मैं वास्तव में इन सर्विसेज को कॉल नहीं करना चाहता, इसलिए मॉक (mock) बनाना जरूरी है। यहाँ मेरे कोड का एक सरल उदाहरण है: ```go package main import ( "fmt" "net/smtp" ) type EmailSender struct{} func (e *EmailSender) SendEmail(to, subject, body string) error { // SMTP के माध्यम से वास्तविक ईमेल भेजना err := smtp.SendMail("smtp.example.com:587", nil, "from@example.com", []string{to}, []byte(body)) if err != nil { return fmt.Errorf("ईमेल भेजने में विफल: %w", err) } return nil } func NotifyUser(sender *EmailSender, userEmail string) e