पृष्ठभूमि:
मैं कम्प्यूटेशनल बायोलॉजी सॉफ़्टवेयर के एक टुकड़े के लिए एक परीक्षण स्क्रिप्ट लिख रहा हूं। मैं जिस सॉफ्टवेयर का परीक्षण कर रहा हूं, उसे चलाने के लिए दिन या सप्ताह भी लग सकते हैं, इसलिए इसमें सिस्टम के क्रैश या खराब होने की स्थिति में रिकवरी फंक्शनलिटी है।
मैं यह पता लगाने की कोशिश कर रहा हूं कि वसूली प्रणाली का परीक्षण कैसे किया जाए। विशेष रूप से, मैं नियंत्रित तरीके से प्रोग्राम को "क्रैश" करने का तरीका नहीं समझ सकता। मैं किसी भी तरह समय की कुछ राशि के बाद चलाने के लिए एक SIGKILL निर्देश के बारे में सोच रहा था। यह शायद आदर्श नहीं है, क्योंकि परीक्षण मामले में हर बार एक ही गति को चलाने की गारंटी नहीं है (यह एक साझा वातावरण में चलता है), इसलिए लॉग को वांछित आउटपुट से तुलना करना मुश्किल होगा।
यह सॉफ़्टवेयर विश्लेषण के प्रत्येक अनुभाग के लिए एक लाइन प्रिंट करता है।
सवाल:
मैं सोच रहा था कि क्या किसी प्रोग्राम से आउटपुट कैप्चर करने के लिए एक अच्छा / सुरुचिपूर्ण तरीका (शेल स्क्रिप्ट में) था और प्रोग्राम को तब मारना चाहिए जब प्रोग्राम द्वारा किसी लाइन / # लाइन का आउटपुट हो?