2013-06-26 111 views
1

我的團隊剛剛開始採用Behat進行BDD。我們構建Web應用程序,並發現我們希望在不同產品中共享一些通用的與Web相關的步驟定義。與MinkExtension中已包含的定義非常相似的東西,例如'我應該看到「<選項>」從「<選擇>」已禁用「。我應該單元測試我的Behat步驟定義嗎?

我們已經建立了一個私人作曲家包,以便我們可以分享我們的自定義網絡步驟定義,而我們現在已經出現的一個問題(非常meta-!)是我們是否應該單元測試我們的步驟定義。

我對此很在意,並不確定它的實用性。我傾向於不測試它們,因爲我認爲在情景失敗時應該突出顯示步驟定義中的失敗,並且在這種情況下,它們應該足夠簡單,以便輕鬆找到任何錯誤。儘管如此,它似乎在這個過程中有點差距;步驟定義是可執行的PHP代碼畢竟...

+0

如果某些東西在水貂中缺失,爲什麼不嘗試爲它做出貢獻而不是創建一個新的包? – tvial

+0

@tvial好主意;我會考慮這樣做。 –

回答

1

我會嘗試測試通用測試代碼中使用的任何邏輯。

E.g.我爲許多測試中使用的phpunit編寫了一個特殊的assert函數(聲明兩個字符串相等而忽略任何空白區別)。我的單元一直在測試(實際上甚至TDD)這個邏輯。

相關問題