2010-12-09 20 views
6

मैंने सभी दस्तावेज़ों की खोज की है लेकिन CTEST_CUSTOM_PRE_TEST का उपयोग करने का एक उदाहरण नहीं दिख रहा है।आप CTEST_CUSTOM_PRE_TEST का उपयोग कैसे करते हैं?

मूल रूप से मुझे परीक्षण चलाने से पहले सर्वर पर कुछ आदेशों को शुरू और चलाने की आवश्यकता है। तो मुझे कुछ पूर्व परीक्षण चरणों को जोड़ने की जरूरत है। CTEST_CUSTOM_PRE_TEST का सिंटैक्स क्या है?

CTEST_CUSTOM_PRE_TEST (??? यहाँ क्या डाल करने के लिए ???) ADD_TEST (MyTest MyTestCommand)

उत्तर

5

CTEST_CUSTOM_PRE_TEST एक ctest डैशबोर्ड चलाने का संदर्भ में प्रयोग किया एक चर है। इसे या तो सीधे सीटीएस्ट-एस स्क्रिप्ट में, या अपने निर्माण पेड़ के शीर्ष पर CTestCustom.cmake फ़ाइल में सेट किया जाना चाहिए।

या तो फ़ाइल में, एक उदाहरण के मूल्य हो सकता है:

set(CTEST_CUSTOM_PRE_TEST "perl prepareForTesting.pl -with-this -and-that") 

यह एक कमांड लाइन, ठीक से सिस्टम पर आप हैं, पर चल रहा है के लिए स्वरूपित किया जाना चाहिए। यह सभी परीक्षणों से पहले एक ctest_test कॉल के दौरान एक बार चलाता है। इसी प्रकार, एक CTEST_CUSTOM_POST_TEST चर भी है, जो एक एकल कमांड लाइन भी होनी चाहिए, लेकिन सभी परीक्षण किए जाने के बाद चलता है।

रिक्त स्थान, उद्धरण और बैकस्लाश के साथ तर्कों से निकलने और भागने से चुनौतीपूर्ण हो सकता है ... लेकिन शायद आपको इसकी आवश्यकता नहीं होगी।

मुझे लगता है कि मैं आप के लिए इंगित कर सकते हैं इस का एक वास्तविक दुनिया उदाहरण का पता नहीं है, लेकिन मैं ctest स्रोत कोड पढ़ सकते हैं ... ;-)

+0

शायद प्रावधान? – Penz

1

OpenSCAD नेतृत्वहीन लिनक्स पर हम एक स्टार्टअप करने का प्रयास सीटीएस्ट रन से पहले आभासी फ्रेमबफर। हालांकि हम PRE_TEST का उपयोग नहीं करते हैं। हम 'cmake' रन के दौरान बिल्ड निर्देशिका में अपना स्वयं का CTestCustom.cmake बनाते हैं। (हम POST_TEST का उपयोग करते हैं, लेकिन cmake के कुछ हाल के संस्करण जहां POST_TEST टूट गया था वहाँ थे)

आप जो cmake निष्पादन के दौरान ${CMAKE_BINARY_DIR}/CTestCustom.cmake को कॉपी किया है एक फ़ाइल में कोड यहाँ https://github.com/openscad/openscad/blob/master/tests