我從來沒有真正寫過任何測試,因爲我通常必須使用低預算。所以我通常只是刪除演示文件。 但是,我注意到測試目錄已經從Symfony 2中的/ src/MyBundle/Test移到了Symfony 3中的/ tests,我想知道爲什麼?爲什麼Symfony 3單元測試移出實際包?
捆綁包或者至少我認爲它們是應用程序中潛在的「不可剔除」組件。這意味着總是可以在另一個Symfony「運行時」運行/使用相同的軟件包,而且幾乎毫不費力。
因此,將測試目錄從其相關軟件包移出到根目錄對我來說沒有任何意義。無理由地製作獨立的軟件依賴/不完整。這實際上讓我覺得我完全誤解了Symfony中bundle的概念。
我也注意到,Symfony的教程開始幾年前,迫使他們的用戶他們的模板進入/應用/資源。當我得知它時,他們在相關的包中有模板,這對我來說似乎更清潔。如果我已經在一個目錄中捆綁了所有東西(!),爲什麼我應該在外面移動任何東西?也許我在翻譯時遇到了一些問題,但在德語中,「捆綁」是一個單位。如果你拆分一捆,你會得到2,但不是一半。
我通常看到的Symfony作爲我的包配置的運行時間,所以我不碰任何東西外面/ src目錄之外composer.json,AppKernel或配置文件。
好吧,我可以承認,束可以根據周圍環境的反應不同 - 但單元測試甚至不應該依賴於上下文,如果我得到了他們的權利。
即使你看到的appbundle作爲一個相關的一個特殊的,上下文 - 它仍然是當一些文件可以存在,發現不一致的開發風格,別人可以在一個完全不同的地方被發現。至少AppBundle不應該是一個捆綁包。
好的,謝謝,我想我現在明白了。我不得不承認,我並不是那麼有經驗的談論大事,但是一個捆綁包本身就是一種應用程序,所以所有相關的東西都應該放在它的目錄中。這包括測試以及模板。但是如果你真的花時間寫測試,我想在準備重用之前將它們移回到包中可能是最簡單的部分。 – sboesch
如果包是共享的(你從作曲家等得到的),你所說的一切都是真的。如果你有幾個本地捆綁包,這種分離不再重要。 –
你說得對。再想一想,我從來沒有真正擁有過任何捆綁軟件,我從一開始就不知道它會被重用。無論如何,我喜歡處理所有捆綁包,因爲我會重用它們,即使它完全沒有意義。如果沒有任何變化,我會在幾個小時內接受您的答案。 – sboesch