幾年前,從來就試圖用BDD和驗收測試一些工具來工作,如硒/網絡驅動器,的FitNesse和JBehave。如何使用行爲驅動的開發和驗收測試?
我想回到我當前項目中的工作,所以我想知道社區正在使用哪些工具來執行該工作!
我的項目基於Java。
驗收測試工具? BDD工具? 我應該考慮一種腳本語言嗎?
幾年前,從來就試圖用BDD和驗收測試一些工具來工作,如硒/網絡驅動器,的FitNesse和JBehave。如何使用行爲驅動的開發和驗收測試?
我想回到我當前項目中的工作,所以我想知道社區正在使用哪些工具來執行該工作!
我的項目基於Java。
驗收測試工具? BDD工具? 我應該考慮一種腳本語言嗎?
我強烈建議spockframework + Geb。儘管你需要groovy支持。我們每天晚上都會有很多測試作爲CI的一部分運行。這些報告採用junit格式(即將被商業用戶加強使用),因此可以發佈到Hudson或Sonar等服務器上。
最成功的團隊正在使用對話而不用擔心太多的工具!
話雖如此,這裏有幾個Java的BDD工具,是在社區使用:
Selenium仍然是Java和Web選擇的自動化工具。
*我幫忙寫了JBehave。我們首先考慮的一個原因是因爲我們使用腳本看到的驗收測試令人吃驚。咩。此外,您無法與業務協作或進行有關腳本的對話。我強烈建議先進行對話**,然後擔心工具!
**如果你正在自己的工作,買一個橡皮鴨。
儘管我同意BDD只在您進行對話時纔有效,但工具在實踐中仍然非常重要。我使用像Cucumber和JBehave這樣的工具的經驗是,他們的維護成本非常高,因爲需要額外的努力才能通過使用正則表達式將步驟綁定到實際實現。嘗試實施BDD時,這種額外成本可能會導致很多挫折。出於這個原因,我開發了JGiven,這是一個以開發人員爲中心的工具,使得編寫和維護BDD方案更具成本效益。 –
1月,我已經做了10年,並幫助寫了JBehave。許多團隊在不轉向工具的情況下獲益。我現在也和非軟件團隊一起做BDD;他們沒有什麼可以自動化,並且仍然*得到好處。在我的最後一個項目中,我們敲了一下這樣的小DSL:https://code.google.com/p/wipflash/source/browse/Example.PetShop.Scenarios/PetRegistrationAndPurchase.cs在實踐中,工具只是*很棒*而像Cucumber和JBehave這樣的英語工具只有在商業人士有興趣閱讀時纔會很好。 – Lunivore