我正在尝试在PhpStorm 8上设置PHPUnit来测试其中包含一些函数的文件。我设置了作曲家和这样的结构:
/src/functions.php
/test/functionsTest.php
/vendor/phpunit...
/composer.json
functions.php
仅包含以下几个功能:
function add_one ($x) {
return $x++;
}
functionsTest.php
有类似的内容:
class functionsTest extends PHPUnit_Framework_TestCase {
public function test_map () {
$this->assertEquals(2, add_one(1));
}
}
我已经将PhpStorm配置为使用项目/vendor
中的phpunit和其他地方的PHP可执行文件。但是,运行这个我只是call to undefined function add_one()
。我将phpunit.xml配置文件设置为包含:
<testsuites>
<testsuite name="Functions Test">
<directory>./test/</directory>
</testsuite>
</testsuites>
<filter>
<whitelist addUncoveredFilesFromWhitelist="false">
<directory suffix=".php">./src/</directory>
<exclude>
<directory suffix=".php">vendor</directory>
</exclude>
</whitelist>
</filter>
引导程序phpunit.php
设置为要求作曲家自动加载(所以单行)。我整天都在阅读PHPUnit文档,但是看不出我是如何解决这个问题的。