Phpunit 为什么PhpStorm只为一些带有额外参数(引导、配置)的测试运行测试?
我使用的是PhpStorm,对于一些PHPUnit测试,我可以右键单击左侧的文件菜单,运行一些测试,它可以正常工作 在控制台中显示 /usr/bin/php-dxdebug.coverage_enable=1/srv/live/vendor/phpunit/phpunit/phpunit--coverage clover/home/me/.PhpStorm2017.3/system/coverage/live$StringTest.coverage--bootstrap/srv/live/vendor/autoload.php--configuration/srv/live/phpunit.xml tests\src\CoreBundle\Helper\StringTest/src/tests/src/CoreBundle/Helper\StringTest/src/test--团队城市 但是,对于另一个包中的其他测试,当我右键单击并运行它时,命令是 /usr/bin/php/srv/live/src/tests/src/OtherBundle/Classes/Validator/stringlengththest.php 测试无法运行。我得到了一个类NotFound错误,我将其归因于命令没有像上面第一个版本那样的额外参数。我注意到的另一件事是,当右键单击菜单时,“运行覆盖率测试”仅适用于第一个测试 这种差异从何而来 我的Phpunit 为什么PhpStorm只为一些带有额外参数(引导、配置)的测试运行测试?,phpunit,phpstorm,xdebug,Phpunit,Phpstorm,Xdebug,我使用的是PhpStorm,对于一些PHPUnit测试,我可以右键单击左侧的文件菜单,运行一些测试,它可以正常工作 在控制台中显示 /usr/bin/php-dxdebug.coverage_enable=1/srv/live/vendor/phpunit/phpunit/phpunit--coverage clover/home/me/.PhpStorm2017.3/system/coverage/live$StringTest.coverage--bootstrap/srv/live/ven
phpunit.xml
文件是
<?xml version="1.0"?>
<phpunit cacheTokens="true"
colors="true"
stopOnError="false"
stopOnFailure="false"
stopOnIncomplete="false"
stopOnSkipped="false"
verbose="true"
bootstrap="/srv/live/vendor/autoload.php">
<php>
<server name="KERNEL_DIR" value="app/" />
</php>
<testsuites>
<testsuite name="Project Test Suite">
<directory>/srv/live/src/tests</directory>
</testsuite>
</testsuites>
<filter>
<whitelist processUncoveredFilesFromWhitelist="false">
<directory suffix=".php">/srv/live/src/</directory>
</whitelist>
</filter>
<logging>
<log type="coverage-html" target="./web/phpunitLog/codeCoverage" charset="UTF-8"
yui="true" highlight="true"
lowUpperBound="50" highLowerBound="80"/>
<log type="testdox-html" target="./web/phpunitLog/testdox.html" />
</logging>
</phpunit>
/srv/现场/src/测试
/srv/live/src/
在File->Settings->Languages&Frameworks->PHP->testframeworks
中
你对为什么我可以运行一个测试有什么想法吗?我的意思是为什么参数不同(例如-dxdebug.coverage\u enable=1
)
php.ini文件没有更改。我找到了一个解决方案(不确定它是否是最好的)
如果我单击Run->编辑配置
然后单击加号并添加新的PHPUnit配置,我可以选择测试不起作用的包
现在,当我右键单击“文件”菜单时,phpunit将使用额外的参数运行
问题是,我从来没有在有效的测试中这样做过,所以尽管我找到了让失败的测试起作用的方法,但我并不完全清楚为什么我一开始就看到了这种差异
感谢您启动车轮。我过去遇到过一些问题,就是没有选择正确的跑步配置。假设您从一个包移动到另一个包,它们有不同的运行配置,可能有不同的引导文件位置。您的配置将自动附加到另一个配置之上,并选择最新的配置作为默认配置。e、 g.我将传递正确的配置,除了它指向一个相邻配置的配置(该配置具有类似的结构和引导名称约定,因此很容易混淆两者)@HunterFrazier我在同一个项目中工作,在屏幕截图中,我使用相同的配置和引导文件。如何/在何处检查运行配置是否正在更改?