我可能對這個過於沉迷,但我的項目有一個非常結構化的佈局,我非常喜歡。擁有這麼多結構實際上證明是有用的,這一次,所以我不希望它再次變得混亂。我應該在哪裏將共享測試實用程序放在多模塊Maven項目中?
首先,每個模塊由幾個Java包:
com.mycompany.mysoftware.modulename
com.mycompany.mysoftware.modulename.impl
com.mycompany.mysoftware.modulename.osgi
com.mycompany.mysoftware.modulename.test
的主要代碼住在.impl
。接口,其他模塊使用的某些枚舉和某些數據容器類將不帶後綴地位於該包中。 .osgi
包中包含OSGi特定代碼(BundleActivator
s等)和.test
包中的單元測試。
現在我有類僞造一個模塊用於測試其他人。我想知道是否應該將那些已經包含用於主代碼的共享庫的common
模塊的.test
包中的那些包,或者是否應該有一個新模塊test
,我可以在Maven中設置不同的依賴範圍。
ETA:我有一個問題是,我得到循環依賴:如果我有兩個模塊和單元測試中的每個所需要的其他的假的,含有假的模塊具有模塊的依賴關係包含接口,它是包含單元測試的相同模塊。所以,假冒應該與測試一起,但是會導致很多代碼重複。或者,對於每個模塊,我製作了一個假模塊,但這讓我覺得它已經失控...
那麼,如果它位於該公共模塊的測試子目錄中,則不會打包。不過,我想,依賴範圍可能是最重要的方面。 – 2009-10-12 15:42:02
的確如此。但是,如果它位於公共模塊的測試子目錄中,則不能依賴多個模塊中的代碼。 – 2009-10-12 15:58:20