2016-05-17 8 views
13

同様の質問Laravel 5: PHPUnit and no code coverage driver availableの答えがありますが、xdebugがインストールされています。PHPUnit。エラー:コードカバレッジドライバが使用できません。 (xdebugがインストールされている)

(もし私が使用している。この問題:Windows7の、netbeans8.1、PHP7、wamp3)

にNetbeansの結果でコードカバレッジを表示:

Error: No code coverage driver is available

とは、出力は以下の通りです:

"C:\wamp\www\treningPHPUnitSymfony2.8\bin\phpunit.bat" "--colors" "--log-junit" "C:\Users\chiny\AppData\Local\Temp\nb-phpunit-log.xml" "--coverage-clover" "C:\Users\chiny\AppData\Local\Temp\nb-phpunit-coverage.xml" "C:\Program Files\NetBeans 8.1\php\phpunit\NetBeansSuite.php" "--" "--run=C:\wamp\www\treningPHPUnitSymfony2.8\src\TreningBundle\Tests\Controller\RabarbarControllerTest.php" PHPUnit 5.3.4 by Sebastian Bergmann and contributors.

Error: No code coverage driver is available

.II 3/ 3 (100%)

Time: 1.13 seconds, Memory: 4.00MB

OK, but incomplete, skipped, or risky tests! Tests: 3, Assertions: 1, Incomplete: 2. Done.](url)

xdebugのconfに(C:\ WAMP \ binに\ apacheの\ apache2.4.17 \ビン\ php.iniの):

[xdebug] 
zend_extension ="C:/wamp/bin/php/php7.0.1/zend_ext/php_xdebug-2.4.0rc3-7.0-vc14.dll" 

xdebug.remote_enable = off 
xdebug.profiler_enable = off 
xdebug.profiler_enable_trigger = Off 
xdebug.profiler_output_name = cachegrind.out.%t.%p 
xdebug.profiler_output_dir ="C:/wamp/tmp" 
xdebug.show_local_vars=0 

ロード拡張子 wamp. loaded extension

(私は同じWindowsパーティションにNetBeansとプロジェクトディレクトリを持っている)

+1

'php.exe -v'とは何ですか? xdebugは有効になっていますか? –

+0

C:¥Windows¥System32> php.exe -v PHP 7.0.1(cli)(ビルド:12月16日20:13:36:30)(ZTS) 著作権(c)1997-2015 PHPグループ Zend Engine v3.0.0、Copyright(c)1998-2015 Zend Technologies –

+0

メイン投稿の最後のprintscreenに示されているようなxdebugはリストにあります –

答えて

11

改正する2つのphp.iniファイルほとんどのApache/PHPのインストール中に間違いWAMPServer

ではあります正しいphp.ini ApacheでPHPで使用されるメニューを使用する

wampmanager->PHP->php.ini 

しかし、PHP CLIが使用するphp.iniファイルを手動でxdebugのは、CLI

php -v 
PHP 7.0.6 (cli) (built: Apr 27 2016 14:00:40) (ZTS) 
Copyright (c) 1997-2016 The PHP Group 
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies 
    with Xdebug v2.4.0, Copyright (c) 2002-2016, by Derick Rethans 

NOTE

に設定されている場合 php -vの結果は次のようになります

\wamp\bin\php\php{version}\php.ini 

を編集する必要が

現在のWAMPServer 3は3.0.4 です。ADDONのアップグレードはSourceForgeで見つかります

最新ADDON PHPのバージョンは、SourceForgeの

でも利用できるPHP7.0.6はまたWAMPServer 3

のためのPHP/MYSQL/ApacheのADDONSの最新リリースで最新に保つためにThe WampServer Forumを参照してくださいされています

あなたはあなたの特定が

+0

そうです。 'php -v'の結果にxdebugが表示されます –

+0

phpディレクトリのphp.iniを編集した後、' Error:コードカバレッジドライバが利用できません。 'というメッセージが表示されます。新しい 'Error:no whitelist configured、no code coverageそれは進歩だと思うし、新しいGoogle検索や別のトピックの問題だと思う。すべてのヒントをありがとう! –

+1

XDEBUGのドキュメント、特に 'xdebug.coverage_enable'を見てください – RiggsFolly

2

マイセッティングを必要と合わせてphp.initweek the XDEBUG config parametersに持っていることがあります:(CLI上のPHP + Xdebugを有効)

MAMP 4 PRO/OS X 10.12

PHP 7.0.10 (cli) (built: Aug 25 2016 17:32:10) (NTS) 
Copyright (c) 1997-2016 The PHP Group 
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies 
    with Xdebug v2.4.1, Copyright (c) 2002-2016, by Derick Rethans 

zend_extension="/Applications/MAMP/bin/php/php7.0.10/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so" 
xdebug.profiler_enable=1 
xdebug.profiler_output_dir="/Applications/MAMP/tmp" 
xdebug.coverage_enable=1 

とカバレッジはまだ行われません:私はPHP 7の新規インストールでこの問題に直面してきました

4

"いいえコード・カバレッジ・ドライバが利用できません" 。1これは、私はそれがxdebugのは、それが働いた。その後

$ phpunit

をインストールしたかどうかを確認する

$ brew install php71-xdebug

$ php -i | grep xdebug //を動作させるためにやったものです。さらにこれは、あなたがそれをLinux上で動作するようにしたい場合は、共有コンポーネント

<?xml version="1.0" encoding="UTF-8"?> 
<phpunit backupGlobals="false" 
     backupStaticAttributes="false" 
     bootstrap="vendor/autoload.php" 
     colors="true" 
     convertErrorsToExceptions="true" 
     convertNoticesToExceptions="true" 
     convertWarningsToExceptions="true" 
     processIsolation="false" 
     stopOnFailure="false" 
     syntaxCheck="false"> 
    <testsuites> 
     <testsuite name="Tests"> 
      <directory suffix=".php">./Tests/</directory> 
     </testsuite> 
    </testsuites> 
    <logging> 
     <log type="coverage-clover" target="./build/logs/clover.xml"/> 
    </logging> 
    <filter> 
     <whitelist addUncoveredFilesFromWhitelist="true"> 
      <directory>./</directory> 
     </whitelist> 
    </filter> 
</phpunit> 

です。このソリューションは、MacOSで動作するだけで、あなたがする必要があるので、私は全体の構造をホワイトリストに登録するために必要なてきたように私のphpunit.xmlがどのように見えるかですapt-getなどの適切なパッケージマネージャを使用してください。

+1

これはもちろんMACだけです。 –

+0

うん、Linux上では、Debianシステムでapt-getのような他のパッケージマネージャを使う必要がある – Robert

関連する問題