“在symfony中运行phpunit时,无法在序列中定义映射项”

时间:2013-05-10 13:00:39

标签: symfony phpunit

当我尝试在我的symfony项目上运行phpunit时,我遇到以下错误:

$ phpunit -c app

1) [...]\DefaultControllerTest::testIndex
Symfony\Component\Config\Exception\FileLoaderLoadException: Cannot import resource "/srv/http/typeform/app/config/config.yml" from "/srv/http/typeform/app/config/config_dev.yml".

/srv/http/typeform/vendor/symfony/src/Symfony/Component/Config/Loader/FileLoader.php:89
[...]
/srv/http/typeform/vendor/symfony/src/Symfony/Bundle/FrameworkBundle/Test/WebTestCase.php:39
/srv/http/typeform/src/QuickyForm/PublicBundle/Tests/Controller/DefaultControllerTest.php:11

Caused by
Symfony\Component\Yaml\Exception\ParseException: You cannot define a mapping item when in a sequence in "\/srv\/http\/typeform\/app\/config\/config.yml"

/usr/share/pear/Symfony/Component/Yaml/Parser.php:116
[...]
/srv/http/typeform/app/bootstrap.php.cache:520
/srv/http/typeform/vendor/symfony/src/Symfony/Bundle/FrameworkBundle/Test/WebTestCase.php:39
/srv/http/typeform/src/QuickyForm/PublicBundle/Tests/Controller/DefaultControllerTest.php:11

当我拨打static::createClient();

时,它似乎崩溃了

这是我的config_test.yml

imports:
    - { resource: config_dev.yml }

1 个答案:

答案 0 :(得分:16)

您收到的错误表明该应用无法解析您的'config.yml',因为“您无法在序列中定义映射项目。”

这意味着在定义数组值时在yml文件中,您不能以“key:value”形式提供映射条目,也不能以“ - item”形式提供序列条目 - 所有值必须是一个或另一个形式。

所以,这没关系:

group: 
  key: value
  key: value

这也没关系:

group: 
  - item 
  - item 

这不行:

group: 
  key: value
  - item 

错误表明config.yml中存在最后一个表单,但如果是这种情况,则应该导致在浏览器中运行应用程序时出现问题,而不仅仅是在phpunit下。