2014-05-03 9 views
5

नहीं बना सकते हैं मैं विंडोज 7 पर phpStorm 7.1.3 संस्करण चला रहा हूं और मैंने संगीतकार स्थापित करने के लिए सबकुछ किया है और फिर phpunit। अब मेरे पास विक्रेता निर्देशिका में है। लेकिन हर बार जब मैं अपना प्रोग्राम चलाता हूं जो एक साधारण वाईआई एप्लीकेशन है तो मुझे एक ही त्रुटि मिलती है।phpunit phpstorm में समस्याएं चलाते हैं, फ़ार

PHP Fatal error: Uncaught exception 'UnexpectedValueException' with message 'Cannot create phar 'C:/wamp/www/myproject/vendor/bin/phpunit', file extension (or combination) not recognised or the directory does not exist' in C:\Users\myUser\AppData\Local\Temp\ide-phpunit.php:177

कृपया मदद, मैं यहाँ पहले से ही दो दिन अटक कर रहा हूँ और नहीं कर सकते यह काम कर रहे हो, लगभग बदल गया है और सब कुछ पुनर्स्थापित लेकिन मदद नहीं कर रहा है।

मैंने नाशपाती का उपयोग नहीं किया, मैंने phpStorm के माध्यम से सबकुछ डाउनलोड किया। मैंने संगीतकार डाउनलोड किया, और उसके बाद phpStorm संगीतकार के माध्यम से मैंने phpUnit 3.7.37 डाउनलोड किया।

यहाँ संगीतकार के लिए मेरी सेटिंग का स्क्रीनशॉट है

enter image description here

यहाँ मेरी composer.json

{ 
    "require": { 
     "phpunit/phpunit": "3.7.37" 
    } 
} 

यहाँ की विषय-वस्तु है PHPUnit enter image description here

के लिए मेरी सेटिंग का स्क्रीनशॉट है
+0

1) क्या PHPUnit का उपयोग करते हैं (क्या स्थापना - नाशपाती/संगीतकार/phar): मैं विस्तार बदल दिया है? 2) PHPUnit संस्करण क्या है? 3) "सेटिंग्स | PHP | PHPUnit" का स्क्रीनशॉट कृपया – LazyOne

+0

ठीक है, मैंने जो कुछ भी पूछा है, उसे मिला है, अगर कुछ और है तो कृपया मुझे बताएं – user3600252

उत्तर

13

आपके दूसरे स्क्रीनशॉट (PHPUnit सेटिंग्स) पर:

  • यदि आप COMPOSER का उपयोग कर रहे हैं तो आपने PHAR विकल्प क्यों चुना?
  • आपने .../bin/phpunit पर क्यों इंगित किया (भले ही आप तीसरा विकल्प चुनते हैं .. आपको इसे फिर PHAR फ़ाइल में इंगित करना चाहिए)?

इसलिए :

  • संगीतकार प्रतिष्ठानों के लिए आप 2 ("कस्टम लोडर का उपयोग करें") विकल्प का उपयोग करना चाहिए।
  • संपादन बॉक्स - आपको इसे अपने ऑटोलोडर स्क्रिप्ट (हाँ - संगीतकार ऑटोलोडर स्क्रिप्ट) पर इंगित करना चाहिए।

संबंधित (समान मुद्दा): https://stackoverflow.com/a/17316104/783119

+0

उत्तर के लिए धन्यवाद, लेकिन अब मुझे एक अलग त्रुटि मिलती है सी: \ wamp \ bin \ php \ php5.4.16 \ php.exe सी: \ उपयोगकर्ता \ myUser \ AppData \ स्थानीय \ Temp \ ide-phpunit.php --no-config c: \ wamp \ www \ myproject घातक त्रुटि: कक्षा ' सीडीबीटेस्टकेस 'सी में नहीं मिला: \ wamp \ www \ myproject \ संरक्षित \ test \ unit \ myModelTest.php लाइन 4 यहां मेरी फाइलों का स्क्रीनशॉट है [लिंक] (http://www.postimg.com/ छवि/14 9 000/फाइलें -148345.jpg) – user3600252

+0

'सीडीबीटेस्टकेस 'क्या है? मुझे लगता है कि यह वाईआई ढांचे से है? यदि ऐसा है - सुनिश्चित करें कि आपके लोडर का संदर्भ है .. या PHPUnit द्वारा उपयोग की जाने वाली आपकी बूटस्ट्रैप फ़ाइल में Yii क्लास लोडर init। ऐसा लगता है कि यह आपकी तरफ से एक गलतफहमी है। – LazyOne

+0

आपको बहुत बहुत धन्यवाद, सब कुछ ठीक है – user3600252

3

आप संगीतकार का उपयोग नहीं कर रहे हैं, तो लेकिन विकल्प 'phpunit.phar के लिए पथ' और अब भी यह संदेश प्राप्त करते हैं, बस सुनिश्चित करें कि पथ आपके द्वारा निर्दिष्ट एक साथ समाप्त होता है बनाने के .phar (आमतौर पर phpunit.phar के साथ समाप्त होता है) मैं यह वही त्रुटि देख रहा था, लेकिन क्योंकि मेरे पास मेरे कमांड लाइन उपनाम को इंगित करने वाला पथ था, वास्तविक .phar फ़ाइल नहीं, यह अनुचित विस्तार और बेल्स पर लटका हुआ है।

0

मैं ज़ेन फ्रेमवर्क 1.12.9 पर phpUnit चलाने की कोशिश कर रहा था और एक ही समस्या थी - इसे कस्टम लोडर का उपयोग करने के लिए phpunit.phar के पथ को बदलकर हल किया गया। फिर आपको इसे संगीतकार द्वारा उत्पन्न autoload.php पर इंगित करना होगा।

मेरे मामले में था

C:\wamp\www\phpu3\vendor\autoload.php 

बाद में, ऐसा करने के लिए महत्वपूर्ण बात यह परीक्षण से बूटस्ट्रैप फ़ाइल बात करने के लिए किया गया था।

0

जब आप wget आदेश का उपयोग phpunit.phar फाइल डाउनलोड, पर मैनुअल शुरू हो रही अनुदेश निम्नलिखित - https://phpunit.de/getting-started/phpunit-4.html "phar" विस्तार हटाया जा रहा है, और PHPSTORM इस फाइल को बाधित करने के लिए मुद्दे हैं।

mv phpunit phpunit.phar 

आप IDE में phpunit.phar फ़ाइल का पथ अद्यतन सुनिश्चित करें कि तदनुसार स्थापित करने