2016-07-25 92 views
0

我們在我們的Symfony 2項目的應用程序/文件phpunit.xml.dist新激活的設置PHPUnit的processIsolation古怪與常數 - 常數已經定義

processIsolation="true" 

,以儘量減少我們的單一測試之間的依賴關係的刺激性。

這與我的同事的本地安裝(php 5.6.20和php 5.6.22)運行良好,但導致與我的設置(php 5.6.24)無盡的錯誤列表我們都使用Linux和相同的phpunit版本4.8.6

我得到的錯誤是

PHPUnit_Framework_Exception: PHP Notice: Constant MB_CASE_UPPER already defined in 

煩人此錯誤是由我們包括供應商包裝拋出。

/供應商/ symfony中/填充工具,MBSTRING

如果這篇文章仍然適用,這是通過引導文件引起被稱爲幾次,它看起來像我要不斷的多次定義。 來源: https://github.com/sebastianbergmann/phpunit/issues/314

我完全迷失了方向如何解決這一問題,並會很高興的任何暗示,是什麼原因造成,以及如何解決它。

我已經在xml文件中嘗試了其他幾個設置,但沒有效果。

回答

0

所以我得到了這個解決,雖然我不知道爲什麼。

所以我的系統運行的是Ubuntu 15.04,我已經安裝了ondrejs php倉庫,能夠爲我的項目選擇合適的php版本,而不是依賴於Ubuntu的有時古董版本。

因此,由於我的同事們使用PHP 5.6.20和5.6.22我在突觸包管理器中檢查了我的版本,發現我以某種方式同時安裝了兩個PHP版本。奇怪的。 php5.6.23(5.6.23 + dfsg-1 +棄用+ dontuse + deb.sury.org〜wily + 1),同時還有版本5.6.24,它在控制檯上使用。

所以我不確定如果版本24導致錯誤或者如果錯誤是由兩個版本引起的,但現在刪除版本24我的測試再次運行。