दस्तावेज़ कहते हैं कि sys.exit() को कॉल करना SystemExit अपवाद उठाता है जिसे बाहरी स्तरों में पकड़ा जा सकता है। मेरे पास एक ऐसी स्थिति है जिसमें मैं निश्चित रूप से और निर्विवाद रूप से एक परीक्षण मामले के अंदर से बाहर निकलना चाहता हूं, हालांकि सबसे अजीब मॉड्यूल SystemExit को पकड़ता है और बाहर निकलने से रोकता है। यह सामान्य रूप से महान होता है, लेकिन विशिष्ट स्थिति जिसे मैं संभालने की कोशिश कर रहा हूं वह वह है जहां हमारे परीक्षण ढांचे ने पाया है कि यह एक गैर-परीक्षण डेटाबेस को इंगित करने के लिए कॉन्फ़िगर किया गया है। इस मामले में मैं बाहर निकलने और किसी और परीक्षण को चलाने से रोकना चाहता हूं। बेशक जब से सिस्टमटेक्सिट unittest जाल और इस तरह से खुशी से जारी है, यह मुझे परेशान कर रहा है।क्या sys.exit() से पकड़े गए SystemExit अपवाद को पकड़े जाने से रोकने का कोई तरीका है?
एकमात्र विकल्प जिसे मैंने अभी तक सोचा है, सीटीपीएस या कॉल एक्जिट (3) के समान कुछ का उपयोग कर रहा है, लेकिन यह वास्तव में सरल होना चाहिए जो कुछ के लिए एक सुंदर फगली हैक जैसा लगता है।
यह एक एम्बेडेड आईपीथन शेल से प्रोग्राम से बाहर निकलने का प्रयास करते समय भी प्रासंगिक है। – quazgar