是否存在與Cucumber/SpecFlow等效的Java或Scala?一種可能是使用JRuby的Cucumber;任何其他?用於Java/Scala的功能級行爲測試工具
5
A
回答
8
看一看ScalaTest with Feature Spec。從ScalaTest網站樣本特徵規格:
import org.scalatest.FeatureSpec
import org.scalatest.GivenWhenThen
import scala.collection.mutable.Stack
class ExampleSpec extends FeatureSpec with GivenWhenThen {
feature("The user can pop an element off the top of the stack") {
info("As a programmer")
info("I want to be able to pop items off the stack")
info("So that I can get them in last-in-first-out order")
scenario("pop is invoked on a non-empty stack") {
given("a non-empty stack")
val stack = new Stack[Int]
stack.push(1)
stack.push(2)
val oldSize = stack.size
when("when pop is invoked on the stack")
val result = stack.pop()
then("the most recently pushed element should be returned")
assert(result === 2)
and("the stack should have one less item than before")
assert(stack.size === oldSize - 1)
}
scenario("pop is invoked on an empty stack") {
given("an empty stack")
val emptyStack = new Stack[String]
when("when pop is invoked on the stack")
then("NoSuchElementException should be thrown")
intercept[NoSuchElementException] {
emptyStack.pop()
}
and("the stack should still be empty")
assert(emptyStack.isEmpty)
}
}
}
1
6
specs通過「forms」提供精確的規格來開發符合Fit的規格。你可以找到一篇文章解釋它的基本原理here和some examples的what can be done與it。
但請注意,圖書館仍處於alpha模式,因爲一旦Scala 2.8.0已經解決,我打算給它更多關注。
3
JBehave在Scala中工作得很好。例如,在本文中,http://jnb.ociweb.com/jnb/jnbJun2010.html有一個鏈接到一個zip文件,其中包含使用完全在Scala中實現的JBehave的示例應用程序。
直接鏈接到郵編:http://www.ociweb.com/jnb/jnbJun2010-scala-bowling.zip
1
JBehave被改寫黃瓜發佈後,讓我們也可以使用純文本。當我們寫它時,小黃瓜沒有出來,所以它不會解析完全相同 - 使用令牌而不是正則表達式 - 但它會做同樣的工作。現在
4
你可以用黃瓜和定義Java或純斯卡拉你的腳步。
這裏有一個關於如何在Scala和SBT中使用它的簡短教程:http://func.io/post/36452127031/pure-scala-bdd-made-easy-with-sbt-and-cucumber。
相關問題
- 1. (C++)使用功能測試工具
- 2. 適用於iPad/iPhone的功能測試自動化工具?
- 3. 哪個工具用於性能測試?
- 4. 功能測試工具 - 尋求意見
- 5. Web輔助功能測試工具
- 6. 用於執行Java Web服務的測試工具工具
- 7. 將功能分爲2個功能用於測試覆蓋
- 8. 具有抓取功能的雲端負載測試工具
- 9. 用於.NET的測試發現工具
- 10. 用於Ajax負載測試的工具
- 11. 用於測試OData服務的工具
- 12. REST用於測試的聽音工具
- 13. 用於測試的HTTP Post Multipart工具
- 14. 用於BlackBerry的UI測試工具
- 15. 在工廠測試功能
- 16. 的Python:用於測試功能
- 17. 尋找適用於Android的功能GUI測試工具,無需代碼訪問
- 18. 性能測試工具
- 19. Geb功能測試如何用於性能/容量測試?
- 20. 使燈具和測試幫助功能可用於ExUnit和iex
- 21. 有哪些工具可用於測試SQL語句的性能?
- 22. 用於閃存性能測試的開源工具
- 23. 將TDD應用於功能測試
- 24. 運行功能測試
- 25. iphone測試工具爲uiwebview
- 26. 用於運行我的自動化測試的開源工具
- 27. 像Jameleon這樣的功能測試工具
- 28. 如何向我的公司銷售非功能測試工具?
- 29. 功能測試覆蓋Apache和jboss上的工具
- 30. 爲什麼進行單元測試和功能測試
也許http://stackoverflow.com/questions/1068785/which-bdd-framework-for-java-do-you-use可能會有所幫助。 – Mark 2010-06-08 20:14:32
你看過可用的框架嗎?對於Scala來說,ScalaTest具有BDD支持,並且Specs在設計時考慮了BDD。然後有很多Java測試框架。也許如果你能更好地解釋你的需求,回答這個問題會更容易。 – 2010-06-08 22:02:10