簡體   English   中英

在 Symfony2 Beta3 中不斷收到“您請求了一個不存在的服務“test.client””

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM