幾個規範:git
能夠參考微軟開源項目的單元測試,地址:https://github.com/aspnetgithub
首先是單元測試項目建立,咱們通常會對各個類庫項目進行單元測試,好比 Application、Repository 等等,咱們是建立一個單元測試項目呢?仍是多個呢?看下 EntityFramework 中的 Test 項目:web
通常狀況下,單元測試項目一一對應於要測試的項目,好比 EntityFramework.Core 對應於 EntityFramework.Core.Tests,還有一種建立方式是,整個解決方案只有一個單元測試項目,好比 EntityFramework.Tests,而後針對各個項目的測試用文件夾進行歸類,哪一種建立方式更好呢?簡單總結下:api
我我的以爲,仍是一一對應的方式比較好,畢竟一個測試項目的大小空間,並非什麼問題。asp.net
除去單元測試項目的建立,還有就是一些命名規範,大體總結下:單元測試
關於測試方法的命名,在微軟開源項目裏是「五花八門」,我隨便整幾個:測試
哪一種命名方式會比較好呢?其實沒有準確的答案,但能夠確定的是,一種測試方法命名方式,在一個解決方案中必須是統一的,測試方法命名最重要的目的是,更好的表達這個測試方法要幹什麼,而且測試方法名稱是給開發人員看的,若是你看一個測試方法名稱,就知道它乾的什麼事,那麼這種測試命名方式就是好的,若是團隊協做開發一個項目的話,團隊之間最好要統一塊兒來,我我的比較傾向於上面第四種。.net
DTO(Data Transfer Objects)-數據傳輸對象,有關 DTO 的項目及類,該如何命名呢?能夠參考這篇博文:Create Data Transfer Objects (DTOs)設計
簡單總結下:orm
問題就是 DTO 單詞是否大小寫,還有就是最後的 s,以此類推,那什麼狀況下要加 s 呢?好比 Services、Interfaces、Controllers、Models 等等,這類項目的共同點就是,項目下面是類似類的集合,和這種狀況不一樣的是,好比這個項目 Sample.App.Infrastructure,就沒有 s。
Web API 全稱 ASP.NET Web API,Web 的項目能夠命名爲 Sample.App.Web,Web API 的項目改如何命名呢?三種方式:
哪一種方式比較好呢?暫時沒有 Google 到示例,不過,我我的傾向於第二種。