2011-10-23 92 views
0

我很難爲過去兩天的經驗而苦惱。 其實我不能正常運行的測試,並獲得:Zend Framework + PHPUnit + Netbeans

PHP Fatal error: Call to undefined function Zend_Application() in C:\xxxxxx\tests\application\controllers\IndexControllerTest.php on line 10

IndexControllerTest是非常簡單的,看起來像這樣:

require_once 'Zend/Test/PHPUnit/ControllerTestCase.php'; 


class IndexControllerTest extends Zend_Test_PHPUnit_ControllerTestCase 
{ 

    public function setUp() 
    { 
     $this->bootstrap = Zend_Application(APPLICATION_ENV, APPLICATION_PATH . '/configs/application.ini'); 
     parent::setUp(); 
    } 

    public function appBootstrap() { 
     $this->application = new Zend_Application(APPLICATION_ENV, APPLICATION_PATH . '/configs/application.ini'); 
     $this->application->bootstrap(); 
    } 
... 

在另一方面引導的測試中僅包含下面的代碼:

// Define path to application directory 
defined('APPLICATION_PATH') 
    || define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application')); // /../application 

// Define application environment 
defined('APPLICATION_ENV') 
    || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'testing')); 

// Ensure library/ is on include_path 
set_include_path(implode(PATH_SEPARATOR, array(
    realpath(APPLICATION_PATH . '/../library'), 
    get_include_path(), 
))); 

require_once 'Zend/Loader/Autoloader.php'; 
Zend_Loader_Autoloader::getInstance(); 

你能幫我找到問題嗎?我想提高迷你項目的質量,開始但不進行測試,這是不可能的。

預先感謝您。


structure

我添加的目錄結構爲我的項目。我在源文件/庫/ Zend中保留zend庫。

回答

2

錯誤來自這個未來:

$this->bootstrap = Zend_Application(APPLICATION_ENV, APPLICATION_PATH . '/configs/application.ini'); 

Zend_Application之前缺少new

但是,這不是我清楚你有什麼,除非你打算使用它appBootstrap功能:

public function setUp() 
{ 
    $this->appBootstrap(); 
    parent::setUp(); 
} 
+0

嗨,謝謝你的回答。不幸的是我又失敗了。我使用setUp()方法修改了代碼。我得到了同樣的錯誤(「 PHP致命錯誤:Class'Zend_Application'找不到'),但這次是在appBootstrap()中。我是否可以要求提供任何補充提示,因爲我想用單元測試開始我的項目以提高質量,如果沒有環境,這是不可能的。 – Lormitto

+0

這意味着PHP沒有找到要加載的類。仔細檢查Zend_Application的路徑是否正確。該文件應該在'../ library/Zend/Application.php'下。 – Sam

+0

你好,我在上面添加了圖片目錄結構。我甚至試圖將Zend庫放置在測試文件夾中。然而它沒有幫助,我仍然失敗可能在這裏某處犯了一些愚蠢的錯誤。 – Lormitto

1

您正在使用什麼命令來運行測試? 如果你不加載引導,你會得到這個錯誤。 phpunit --bootstrap tests/bootstrap.php測試

相關問題