2013-06-04 3 views
13

मैं PHPUnit में परीक्षण चलाने और इस त्रुटि को प्राप्त करने का प्रयास कर रहा हूं।कक्षा __PHP_Incomplete_Class में कोई unserializer

Fatal error: Uncaught exception 'ErrorException' with message 'Class __PHP_Incomplete_Class has no unserializer' in /opt/lampp/lib/php/PHPUnit/Util/PHP.php:237

PHP - 5.4.7 
PHPUnit - 3.7.21 

PHPUnit सेटिंग:

processIsolation = "true" 

अग्रिम धन्यवाद।

+1

क्या आपने इसे गुगल करने का प्रयास किया है? https://www.google.co.uk/search?q=Class+__PHP_Incomplete_Class+has+no+unserializer PHPUnit और symfony2 – Pudge601

+0

के लिए विशिष्ट समस्या होने लगता है http://stackoverflow.com/a/14514753/921154 शायद संबंधित हो। अपने वैश्विक दायरे में पीडीओ कनेक्शन डालने वाले ढांचे के साथ काम करते समय, समाधान उस वैरिएबल को बैकअपग्लोबलब्लैकलिस्ट में जोड़ना था: http://phpunit.de/manual/3.7/en/fixtures.html#idp7165424 – qrazi

उत्तर

1

ब्राउज़र में अपनी साइट खोलने का प्रयास करें और फिर परीक्षण को निष्पादित करने का प्रयास करें। मुझे यकीन है कि यह काम करेगा, ऐसा लगता है कि पीएचपी यूनिट द्वारा कैश पीढ़ी में कुछ अंतर है और सिम्फनी

10

परीक्षण वातावरण के लिए कैश साफ़ करने का प्रयास करें।

<?php 
ini_set('unserialize_callback_func', 'debug_unserialize'); 

function debug_unserialize($classname) 
{ 
    die(var_dump($classname)); 
} 

इस तरह आप जो classname समस्या का कारण है देखेंगे: php app/console cache:clear --env=test

+0

धन्यवाद, लेकिन यह काम नहीं किया, मुझे कारण पता है लेकिन मुझे इसके बारे में निश्चित नहीं है क्योंकि मेरे पास इसका कोई समाधान नहीं है। यह समस्या PHP और PHPUNIT में अलग-अलग "ग्लोबल्स" को संभालने के कारण है, मैंने इस विकल्प को भी आजमाया है (http://phpunit.de/manual/3.7/en/appendixes.annotations.html#appendixes.annotations.backupGlobals) – Infinity

6

यहाँ एक डिबगिंग समाधान जहां unserialize विधि विफल हो रहा है कि आप खोजने में मदद दे सकता है।

+0

उपयोगी आदेश। हालांकि, मेरा आउटपुट एक वर्ग दिखाता है जो अस्तित्व में नहीं है। इस पर कोई विचार क्यों होगा? मुझे लगता है कि यह संगीतकार या कैश के साथ कुछ गलत होने के कारण है, लेकिन मैंने दोनों को मंजूरी दे दी है और संगीतकार पैकेज को दोबारा स्थापित किया है – Windowpane

संबंधित मुद्दे