एक सॉफ़्टवेयर के एक टुकड़े के लिए परीक्षण लिखते समय, एक पुस्तकालय कहते हैं, क्या आप सभी इकाई परीक्षणों को एक में संकलित करना पसंद करते हैं, या उन्हें कई निष्पादन योग्य में अलग करते हैं?
कारण मैं पूछ रहा हूँ क्योंकि मैं वर्तमान में काम कर रहा हूँ एक पुस्तकालय का परीक्षण करने के लिए CUnit का उपयोग कर रहा हूँ। परीक्षणों को अलग-अलग सुइट्स में विभाजित किया जाता है जो विफलताओं के लिए मुद्रित आउटपुट के साथ एक निष्पादन योग्य में संकलित किए जाते हैं। अब, उस लाइब्रेरी के लिए बिल्ड सिस्टम CMake है (जो कि उसके नाम के बावजूद, CUnit के साथ बहुत कम संबंध रखता है), जो कि अपने स्वयं के परीक्षण ढांचे, CTest के साथ आता है । CTest मुझे परीक्षण के रूप में कार्य करने वाले निष्पादन योग्य की एक सूची को पंजीकृत करने की अनुमति देता है।
मैं विचार कर रहा हूं कि स्वचालित परीक्षण रन के लिए CTest का उपयोग करना है या नहीं। हालाँकि, इसके लिए मुझे उन परीक्षणों को विभाजित करने की आवश्यकता होगी जो मैंने अब तक अलग-अलग संकलन लक्ष्यों में लिखे हैं। अन्यथा, मैं वास्तव में कुछ उन्नत उन्नत सुविधाओं का उपयोग नहीं कर सकता, जैसे कि चयनात्मक रूप से चल रहे परीक्षण।
मुझे लगता है कि यह एक सवाल है कि किस उपकरण का उपयोग किया जाए और उनकी हैंडलिंग और परंपराएं, लेकिन इसके अलावा, क्या कोई अन्य कारण हैं जो अलग-अलग लोगों पर एक एकल परीक्षण निष्पादन योग्य पसंद करते हैं? या ठीक इसके विपरीत?