2017-02-17 68 views
1

我知道這個問題已經被問一百遍,但我是新來PHPUnit的,我不知道如何使用以前的答案,幫助我的情況PHP單位 - 類「化PHPUnit_Framework_TestCase」未找到

這是我的文件夾結構

/src/MyDate.php 
    /src/Autoload.php 

    /tests/MyDateTest.php 

    /vendor/phpunit/phpunit 

自動加載的文件有這個在它

<?php 

    spl_autoload_register(
    function($class) { 
     static $classes = null; 
     if ($classes === null) { 
     $classes = array(
      'mydate' => '/MyDate.php' 
     ); 
     } 
     $cn = strtolower($class); 
     if (isset($classes[$cn])) { 
     require __DIR__ . $classes[$cn]; 
     } 
    } 
); 

而且MyDateTest.php有這個

<?php 

class MyDateTest extends PHPUnit_Framework_TestCase 
{ 
| 
| 
test be here 

當我運行

phpunit --bootstrap= src/autoload.php tests/MyDateTest.php 

我得到這個錯誤

Fatal error: Class 'PHPUnit_Framework_TestCase' not found in C:\wamp64\www\datechallange\tests\MyDateTest.php on line 3 

我試過類似的回答每一個解決方案。試圖要求與該類文件,但其他類缺失。我嘗試修改自動加載文件以包含phpunit庫,但是我做錯了或者不是這樣。我試圖修改xml文件,所以我不需要使用--bootstrap,但是我有同樣的錯誤。

我想關鍵是修改autoload.php文件,但我不知道如何。

感謝

回答

3

你似乎有一個或兩個的兩個問題。

  • 不使用Composer,這也將提供一個供應商/ autoload.php文件,將在已通過composer.json文件被列入任何文件自動拉。
  • 最新版本的PHPunit(v> 6.0)不再使用長類名稱。儘管如此,仍然支持v5 +。

建議使用的機制安裝PHPUnit 5.7是:

composer require --dev phpunit/phpunit:^5.7 

或者,也可以下載作爲一個phpunit.phar可以運行不亞於任何其他PHP腳本。