2017-03-02 38 views
0

我正在做一個核心框架,將有幾個客戶端應用程序。框架的客戶端必須具有爲框架設置的某些配置值才能正常運行。框架中有一系列Spock規範文件,用於驗證配置是否合適。如何使Spock掃描規範在依賴關係

在客戶端中,可以對每個單獨的規範文件進行子類化,並且一切都很好。但是,客戶必須知道每個規格文件的名稱,並且如果有新的或重命名的規格文件,則必須保持最新。有沒有辦法將Spock設置爲自動掃描依賴項中的規範文件?

+1

您的問題對我來說還不清楚。當你說「規範」時,你的意思是Spock類「規範」還是隻是巧合?你在開發什麼樣的框架?一個測試框架?你需要什麼比Spock已經提供的更多?在這種情況下,「客戶」意味着什麼。我會非常感謝一些實際的代碼,而不僅僅是抽象的理論。這裏有太多的變數阻止讀者理解這個問題。 – kriegaex

+0

@ kriegaex:謝謝澄清。我對這個問題做了一些更新,但直接回答一些問題可能更容易。他們是Spock規範類。該框架是特定於我的域的通用框架,它是客戶端直接使用的代碼,但也有測試。 「客戶端」是導入框架JAR並使用它的代碼。 – User1

+0

這是否意味着您將Spock測試類與生產代碼混合?或者在運行時使用Spock作爲工具?我還是不完全明白。對不起,沒有任何代碼,我離開這裏。祝你好運。並且充分尊重:從擁有13k聲望的用戶那裏,我期望他知道如何提出關於SO的問題。 – kriegaex

回答

0

我不得不承認,我也沒有完全理解這個問題,但會盡力幫助 當談到Spock規範時,他們實際上並沒有被spock引擎掃描。

它就像JUnit(我認爲你熟悉它:)) - 測試用例由一些外部程序運行。它可以是maven surefire插件或IDE,可以掃描並找到所有相關的類,但它不是JUnit的工作。 實際上,spock也是如此,它開始了它的魔法,並將「接受」一種規範作爲輸入參數。

您仍然可以創建一個偵聽器,通過創建自己的Spock extension來跟蹤規範執行,但就是這樣。

希望這會有所幫助