$_SERVER['DOCUMENT_ROOT']
भी बूटस्ट्रैप फ़ाइल और एक ही Bootstrap_test.php
में सेट किया जा सकता विशेषता के साथ PHPUnit विन्यास फाइल phpunit.xml
से जुड़ा हुआ है नाम bootstrap=Bootstrap_test.php
मैं आवश्यकता को प्राप्त करने के $ _SERVER [ 'DOCUMENT_ROOT'] सेट करने में सक्षम था जेनकिंस नौकरी विन्यास के लिए। "Bootstrap_test.php" की तरह
<phpunit
backupGlobals="false"
backupStaticAttributes="false"
strict="true"
verbose="true"
bootstrap="Bootstrap_test.php">
<testsuites>
<testsuite name="PHPUnit Test Suite">
<file>PHPUnitTest.php</file>
</testsuite>
</testsuites>
<logging>
<log type="coverage-clover" target="logs/clover.xml"/>
</logging>
</phpunit>
लग रहा है और Bootstrap.php
में सामग्री define()
समारोह का उपयोग कर घोषित किया जाता है:
define('BASE_PATH', realpath(dirname(__FILE__)));
$_SERVER['DOCUMENT_ROOT'] = BASE_PATH;
BASE_PATH
चर आम तौर पर जेनकींस काम निर्देशिका का पूर्ण पथ का आयोजन करेगा। कहें, जेनकिंस नौकरी का नाम Test_Job
है। निर्देशिका जहां जेनकींस प्रोजेक्ट सोर्स कोड रखेगी /var/lib/jenkins/jobs/Test_Job/workspace
है (जेनकिंस कार्य निर्देशिका को /var/lib/jenkins
के रूप में मानते हुए)।
यदि बूटस्ट्रैप_टेस्ट।php मूल निर्देशिका में रखा गया है, BASE_PATH
/var/lib/jenkins/jobs/Test_Job/workspace
रखेगा और अंततः $_SERVER['DOCUMENT_ROOT']
पर सेट होगा।
स्रोत
2013-10-03 09:19:38
समस्या तब बन जाती है, मैं इस वर्ग को शामिल करने वाली फ़ाइल को कैसे शामिल करूं? –
आह ठीक - मुझे समस्या दिखाई देती है ... मैंने आपके प्रश्न की वास्तविक पृष्ठभूमि को थोड़ा गलत समझा। आपको किसी भी पर्यावरण परिवर्तक ('$ _SERVER ['DOCUMENT_ROOT']') का उपयोग करके फ़ाइलों को शामिल करने पर भरोसा नहीं करना चाहिए। क्या यह संभव होगा कि आप सापेक्ष पथों का उपयोग करके अपनी फाइलें शामिल करें, उदा। 'requ_once dirname (__ FILE__)। '/ MyClass.php''? दूसरी ओर आप कुछ प्रकार की ऑटोलोडिंग सेट कर सकते हैं ... –