我正在努力让Phactory使用Symfony2项目。这是我在我的一个单元测试中所拥有的:
<?php
namespace VNN\PressboxBundle\Tests\Entity;
namespace VNN\PressboxBundle\Entity;
use VNN\PressboxBundle\Entity\User;
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
use Phactory\Sql\Phactory;
class UserTest extends EntityTest
{
public function testCreate()
{
Phactory::define('user', array(
'username' => 'jasonswett',
));
}
}
我尝试运行该测试时遇到的错误是:
PHP Fatal error: Class 'Phactory\Sql\Phactory' not found in /Users/jason/Web/pressbox/src/VNN/PressboxBundle/Tests/Entity/UserTest.php on line 12
足够公平。如何让这个文件与Phactory交谈?如果有帮助,我知道Phactory
类是在vendor/chriskite/phactory/lib/Phactory/Sql/Phactory.php
中定义的,前几行是这样的:
<?php
namespace Phactory\Sql;
class Phactory {
答案 0 :(得分:0)
只需将Phactory
命名空间添加到autoload.php
即可。
另外,我更喜欢在bootstrap
中将PHPUnit的autoload.php
参数设置为phpunit.xml.dist
:
<phpunit
...
bootstrap = "autoload.php"
>
这适用于基于Composer的Symfony 2.1项目,但我不确定2.0的项目。