में अपवादों के लिए यूनिट परीक्षण मैं पाइथन और सामान्य रूप से प्रोग्रामिंग में एक शुरुआतकर्ता हूं, और अनजान मॉड्यूल के बारे में कुछ प्रश्न पूछता हूं।पायथन कन्स्ट्रक्टर
मेरे पास एक कक्षा है, और __init__
विधि में मैं खराब तर्कों की जांच करने के लिए कुछ दावे कर रहा हूं। मैं एक अनजान बनाना चाहता हूं जो नए उदाहरण बनाते समय ऐसे AssertionError के लिए जांच करता है।
अनजान मॉड्यूल में, कोई कॉल करने योग्य होने पर विशिष्ट अपवाद के लिए (assertRaises
के साथ) परीक्षण कर सकता है, लेकिन जाहिर है कि कक्षा के तरीकों पर लागू होगा। कन्स्ट्रक्टर के लिए ऐसे परीक्षण को चलाने का सही तरीका क्या है?
मुझे पता है कि मैं केवल खराब तर्कों के साथ कक्षा का उदाहरण बनाने का प्रयास कर सकता हूं, और एकजुट परीक्षण विफलता की रिपोर्ट करेगा, लेकिन यह पहले ऐसे अपवाद के तुरंत बाद बंद हो जाता है, और यहां तक कि यदि मैं एकाधिक परीक्षणों में एकाधिक परीक्षण लपेट सकता हूं परीक्षण कार्यों, यह बिल्कुल सुरुचिपूर्ण प्रतीत नहीं होता है।
ठीक है, मेरे विशेष मामले में मैं यह कहना चाहूंगा कि कुछ गलत हो गया है, क्योंकि बाद में मैं कुछ सी पुस्तकालयों को सीटीपीएस के साथ लोड करता हूं और उन्हें रचनाकार से तर्क प्राप्त करना पड़ता है ... –
@asen_asenov: उस मामले में , बस उचित परिवर्तन के साथ अपने ctypes कॉल लपेटें ctypes.c_int (परम)। यह सुनिश्चित करेगा कि प्रकार संगत है और आपके लिए असंगत प्रकारों पर स्वचालित रूप से एक त्रुटि उत्पन्न करेगा; – nosklo