[英]symfony simple-phpunit error 'You have requested a non-existent service “test.client”' only in deployment script
[英]Keep getting 'You have requested a non-existent service “test.client”' in Symfony2 Beta3
我正在尝试设置单元测试,但每当我运行“phpunit -c app”时,我都会收到此错误:
Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException:您请求了一个不存在的服务“test.client”。
我的测试用例中的代码只是:
public function testNonAuthenticatedPathsIndex()
{
$client = $this->createClient();
}
如果我不调用 createClient 一切都会正常运行。 我检查了 AppKernel.php 以确保 FrameworkBundle(我相信这是定义此服务的位置)肯定仍然存在并且确实存在。
我对可能导致这种情况的原因感到有些困惑,因为我以前曾设法做这种事情。
谢谢你的帮助。
您是否在config_test.yml中启用了framework.test
选项?
framework:
test: ~
在phpunit.xml
,您应该具有如下环境变量:
<env name="APP_ENV" value="test"/>
symfony 版本 3.3.13 有这个问题。
config_test.yml
文件很好,但我犯了同样的错误。
我解决了在php
文件中的 php 下添加<server name ="APP_ENV" value="test" />
选项
我的项目的远程构建有同样的问题。 此问题与我项目根目录中的空symfony.lock
文件有关。 此文件用于防止 symfony 配方执行两次。 但是我的symfony.lock
已损坏且为空,因此框架包执行了它的配方并将test
中的我的APP_ENV
变量替换为dev
phpunit.xml.dist
。 它发生的原因是composer.json
( https://github.com/symfony/flex/issues/347 ) 中的repositories
节点
我正在通过手动在symfony.lock
中添加依赖项来解决这种情况
composer 需要 symfony/browser-kit
定义test.client
取决于AbstractBrowser::class
存在
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.