我试图找到一种简单的方法,在Symfony 2.6中加载我的夹具来运行功能测试。这是一个很常见的问题,有人问过几次,但我迄今发现的答案并不完全符合我的期望:
在这两种情况下(使用语句和手动代码)都存在大量开销,我认为这是非常标准的任务。
另一方面,这些帖子推荐使用LiipFunctionalTestBundle。下面是我在安装说明中所读到的:
从捆绑测试\WebTestCase类编写夹具类并调用loadFixtures()方法。请注意,在加载夹具之前,loadFixtures()将删除数据库中的内容。“
所以我试过..。
namespace AppBundle\Test\Controller;
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
class MyControllerTest extends WebTestCase
{
public function setUp()
{
$classes = array(
'AppBundle\DataFixtures\LoadUserData',
);
$this->loadFixtures($classes);
}
...
}运气不好:
在第15行的AppBundle\Tests\Controller\MyControllerTest::loadFixtures()中调用未定义的方法/gitrepos/myproject/src/AppBundle/Tests/Controller/MyControllerTest.php
静态调用会产生同样的错误..。
self:loadFixtures($classes);我真的觉得我错过了一些很明显的东西。有人能让我重回正轨吗?
发布于 2015-05-16 13:15:20
我看得出来你在用
Oro\Bundle\TestFrameworkBundle\Test\WebTestCase作为基类,而我认为您应该使用
Liip\FunctionalTestBundle\Test\WebTestCase才能调用此方法。
https://stackoverflow.com/questions/30262077
复制相似问题