2012-07-04 4 views
1

symfony2 프로젝트로 netbeans에서 phpunit을 작동 시키려고합니다.Symfony2 netbeans 7.1.2 및 phpunit

프로젝트 루트에서 하위 폴더 테스트를했습니다. 시도한 프로젝트를 phpunit.xml.dist와 bootstrap.php.cash에 연결했습니다. 그 테스트 폴더에 MyProjectTestSuite.php를 만들어 내 프로젝트 속성에 그대로 둔다.

하지만이 모든 것이 나에게 오류 가져옵니다

PHP Fatal error: Uncaught exception 'PHPUnit_Framework_Exception' with message 'Could not find class "" in "C:\Program Files\NetBeans 7.1.2\php\phpunit\NetBeansSuite.php".' in C:\xampp\php\PEAR\PHPUnit\Util\Skeleton\Test.php:125 
Stack trace: 
#0 C:\xampp\php\PEAR\PHPUnit\TextUI\Command.php(157): PHPUnit_Util_Skeleton_Test->__construct('', 'C:\Program File...') 
#1 C:\xampp\php\PEAR\PHPUnit\TextUI\Command.php(129): PHPUnit_TextUI_Command->run(Array, true) 
#2 C:\xampp\php\phpunit(53): PHPUnit_TextUI_Command::main() 
#3 {main} 
    thrown in C:\xampp\php\PEAR\PHPUnit\Util\Skeleton\Test.php on line 125 

Fatal error: Uncaught exception 'PHPUnit_Framework_Exception' with message 'Could not find class "" in "C:\Program Files\NetBeans 7.1.2\php\phpunit\NetBeansSuite.php".' in C:\xampp\php\PEAR\PHPUnit\Util\Skeleton\Test.php:125 
Stack trace: 
#0 C:\xampp\php\PEAR\PHPUnit\TextUI\Command.php(157): PHPUnit_Util_Skeleton_Test->__construct('', 'C:\Program File...') 
#1 C:\xampp\php\PEAR\PHPUnit\TextUI\Command.php(129): PHPUnit_TextUI_Command->run(Array, true) 
#2 C:\xampp\php\phpunit(53): PHPUnit_TextUI_Command::main() 
#3 {main} 
    thrown in C:\xampp\php\PEAR\PHPUnit\Util\Skeleton\Test.php on line 125 

시험의 실행되지 않습니다를.

myprojectetstsuite.php는 다음과 같습니다.

<?php 

use Symfony\Component\Finder\Finder; 

class MyProjectTestSuite extends PHPUnit_Framework_TestSuite 
{ 

    public static function suite() 
    { 
     $suite = new MyProjectTestSuite(); 
     $finder = new Finder(); 

     // ---------- COMMENT OUT TO TEST A SPECIFIC FILE ---------- 
     // $suite->addTestFile('../src/<yourbundle>/DefaultBundle/Tests/Controller/SomeControllerTest.php'); 
     // return $suite; 
     // ---------- 

     echo "Searching for test cases...\n\n"; 
     foreach ($finder->files()->in('../src/')->name('*Test.php') as $file) { 
      if (preg_match('%\\Tests\\[\w-\\]+Test.php%i', $file->getPathName())) { 
       echo 'Adding test : ' . $file->getPathName() . "\n"; 
       $suite->addTestFile($file->getPathName()); 
      } 
     } 
     echo "\n"; 

     return $suite; 
    } 

} 
+0

phpunit 구성에 대한 기본 파일이므로 phpunit.xml.dist를 phpunit.xml에 복사 해 보았습니까? – Sgoettschkes

+0

옙, 전혀 다른 – Bram

답변

1

okey .. 테스트 스위트가 테스트를 찾지 못하면 netbeans가 기본 테스트 스위트를 사용합니다. 나는 몇몇 코드 (정규 표현식을 주석으로 처리했다)를 발견하고 거기서 모든 것을 발견 할 수 있도록 코드 abit를 조정했다.