2016-10-26 63 views
1

通過當我運行一個測試給出以下警告: 缺少參數1 ...PHPUnit的測試與缺少參數1

的單元測試通過,纔有可能讓測試失敗?

這是我的PhpUnit.xml

<phpunit bootstrap="bootstrap.php" 
     colors="false" 
     convertErrorsToExceptions="true" 
     convertNoticesToExceptions="true" 
     convertWarningsToExceptions="true" 
     strict="true"> 
    <selenium> 
     <browser name="Internet Explorer" browser="*iexplore" /> 
     <browser name="Firefox" browser="*firefox" /> 
    </selenium> 
    <filter> 
     <whitelist> 
      <directory>../src</directory> 
     </whitelist> 
    </filter> 
    <testsuites> 
     <testsuite name="unitTests"> 
      <directory suffix="Test.php">*</directory> 
     </testsuite> 
    </testsuites> 
    <logging> 
     <log type="coverage-html" target="../build/coverage" /> 
     <log type="coverage-clover" target="../build/logs/clover.xml" /> 
     <log type="coverage-crap4j" target="../build/logs/crap4j.xml" /> 
    </logging> 
</phpunit> 

這是PHP日誌: 缺少對於xx()的函數,稱爲在XX上線37和定義(錯誤類型參數1:警告在XX線78)

回答

1

我已經發現一個有點hackish溶液:)

class THE_GREATEST_EVER_PHPUnit_Framework_TestCase extends \PHPUnit_Framework_TestCase 
{ 
    public static function setUpBeforeClass() { 
     set_error_handler(function($errno, $errstr, $errfile, $errline) { 
      throw new \RuntimeException($errstr . " on line " . $errline . " in file " . $errfile); 
     }); 
    } 

    public function tearDown() { 
     restore_error_handler(); 
    } 

}