我們有許多使用共享組件(dll)的公共基礎的項目。 目前,每個項目的開發版本都與從組件主幹構建的dll鏈接。 (即主幹構建使用其他主幹構建的dll)最佳做法,建設樹幹反對樹幹?
當我們進行發佈構建時,我們有一個腳本遍歷項目文件,並將主幹引用替換爲特定編號的組件版本(構建自一個標記的分支)
我認爲這會削弱我們在開發過程中所做的測試,因爲我實際上正在使用的項目正在使用不同的dll來發布版本將使用的內容。我希望始終針對組件的編號版本進行開發,只有在有特定需求時才更新它們。
然而,團隊中的其他人認爲,除非我們針對主幹進行開發(並且每次發佈更新到組件的較新版本),否則我們的問題是(a)我們的產品幾乎無法更新到新版本(b)當我們確實需要更新它時,這將是一項艱鉅的任務,因爲組件的源/接口會發生很大的變化。
你遵循什麼做法,爲什麼?
編輯:對不起,我剛剛意識到我有些困惑,提到有幾個主要產品共享組件 - 儘管它們共享組件,但它們不在同一臺PC上運行。我關心的是這樣一個事實,因爲每次發佈產品時組件可能會發生變化(即使沒有更新組件的特定要求),測試將會錯過組件中所做的一些微妙變化,而與產品上正在進行的具體工作。
誠然,接口可能變化不大。我更擔心組件的行爲發生微妙變化,因爲測試主要集中在對主要產品進行的更改上 – hamishmcn 2008-12-15 15:40:35
您可以添加一些基本的單元測試? – chills42 2008-12-15 15:57:25