2011-11-09 34 views
1

經過全新的symfony2安裝後,我可以運行phpunit -c app/,phpunit測試包含的演示應用程序:OK (1 test, 1 assertion)如何進行單元測試symfony2核心

但是,當我運行phpunit -c vendor/symfony/時,我收到沒有輸出(即使有詳細說明),如下所述:http://symfony.com/doc/2.0/contributing/code/tests.html

有誰知道如何使這項工作?

  • PHPUnit的:3.6.2
  • PHP:5.3.8
  • 的Symfony:2.0.5

測試樹枝,學說和其他插件按預期工作(雖然學說測試失敗的一些原因)。

+0

你檢查了symfony的源代碼嗎?對於symfony 1.x,它們在/ test目錄中包含一個完整的測試庫。 –

+0

我有vendor/symfony/tests/Symfony/Tests:Bridge和Component中的2個目錄。兩者都包含大量的測試用例(「擴展PHPUnit_Framework_TestCase」)。 – AaL

+0

針對/ app運行phpunit可能無法正常工作,因爲您必須設置自己的單元測試。 symfony無法知道你將如何構建你的應用程序。但它至少應該對核心代碼運行單元測試。 –

回答

2

如果你沒有輸出,這可能是因爲你配置php不顯示錯誤。

必須空空的Symfony的測試套件之前,使用vendors.php腳本安裝廠商:

$ php vendor/symfony/vendors.php 
+0

謝謝!我想我已經通過執行'php bin/vendors install'來安裝它們了。 – AaL

+0

這是一個正確的答案。不幸的是,我不允許它投票(沒有足夠的代表)。儘管如此,symfony2的測試在大約66%的時候中止了測試,但沒有任何通知。 :/我要去參加symfony論壇,並詢問具體情況。 – AaL

+0

我認爲輸出是空的,因爲你的PHP配置(錯誤報告,顯示錯誤,...)。由於Symfony帶有一個巨大的測試套件,您應該嘗試增加php.ini中允許的最大內存。 – Herzult

0

你運行使用提供phpunit.xml.dist配置文件的測試?

從項目的根目錄:

$ phpunit --configuration app/phpunit.xml.dist vendor/symfony/tests 

這應該添加一個自動加載的供應商。

+0

是的,那是什麼爲什麼我使用「-c」選項(與「 - 配置」相同)。 – AaL