2014-07-09 31 views
1

基於Maven和sbt,Scala測試類的佈局約定在src/test/scala下。在該目錄下,什麼是測試類的正確約定?Scala:測試類的目錄佈局

具體做法是:

  1. 應該測試迪爾斯他們正在測試的類的迪爾斯結構相匹配?
  2. 單元測試和集成測試應該放在單獨的dirs中嗎?如果是這樣,那麼這對於#1是否合適?
  3. 測試助手和測試基類在哪裏去?不是測試而是支持測試的代碼?
  4. 這些都是什麼包?

回答

0

我認爲你應該思考什麼對你有好處,並幫助你的項目而不是最佳實踐。

我5毛錢:

  1. 約匹配結構(包)一個好處是,可以使內部的東西包私有,但仍然對其進行測試。 Scala並不要求你將目錄結構與包結構進行匹配,但這樣做的好處是可以很容易地找到圍繞代碼庫的方式。
  2. 我認爲這取決於您的項目,集成測試運行速度慢/映射到單獨的測試運行,還是編譯速度慢,並且您並不總是希望在運行單元測試時編譯它們,然後它可以是一個想法,即使它們有一個單獨的源代碼根目錄,但您也可以使用您的測試庫的標記/類別支持,並將它們混合使用或使用測試用例的命名標準(例如NnnnnSpec vs NnnnnIntegrationSpec)
  3. 隨着測試類,但命名不同,可能下,很容易識別爲測試支持一個單獨的包/公用事業
  4. 參見#1和#3