2011-11-20 17 views
6

Có công cụ BDD nào cho Scala hỗ trợ các mệnh đề Gherkin có thể tái sử dụng được không?Công cụ BDD cho Scala hỗ trợ các mệnh đề Gherkin có thể tái sử dụng được

Tôi muốn để có thể có khả năng sử dụng thông số kỹ thuật như thế này:

Given number 4 is entered 
When "+" is pressed 
And number -1 is entered 
And "*" is pressed 
And number 2 is entered 
And "=" is pressed 
Then result is 6 

Và tôi muốn xác định đồ đạc để khoản Gherkin khác nhau bởi một tham số chỉ một lần, một cái gì đó như:

scenario("(4+(-1)) * 2 = 6") { 

    given("number 4 is entered") 
    when("'+' is pressed") 
    and("number -1 is entered") 
    and("'*' is pressed") 
    and("number 2 is entered") 
    and("'=' is pressed") 
    then("result is 0") 
} 

định nghĩa Với các điều khoản trông như như sau:

"number $number is entered" { 
    calculator.enter(number) 
} 
"'$key' is pressed" { 
    calculator.press(key) 
} 
"result is $number" { 
    assert(calculator.getDisplayedNumber === number) 
} 

Tôi đã xem qua hướng dẫn sử dụng ScalaTest và Specs nhưng tôi không tìm thấy tính năng này. ScalaTest dường như có thể tái sử dụng mệnh đề đã định nghĩa trong một kịch bản khác, nhưng có vẻ như nó không được tham số hóa.

Bạn có biết một số công cụ hỗ trợ những gì tôi muốn hay không, ví dụ: một số phần mở rộng cho ScalaTest, hoặc một cách để mở rộng bản thân mình với kết quả như vậy?

Trả lời

Các vấn đề liên quan