从JBehave中的stext场景中自动生成候选步骤方法存根

时间:2012-01-04 07:54:34

标签: bdd jbehave

我使用Jbehave作为我的BDD框架。我正在寻找一种从文本场景中自动生成候选步骤方法存根的方法,如

Given there is a flight
And there is a customer
When the customer books the flight
Then the customer is shown on the manifest

到这样的Java:

<@> Given("there is a flight")
<a@> Pending
public void thereIsAFlight() {
}

<@> Given("there is a customer") // note 'Given', even though story line is 'And'
<@> Pending
public void thereIsACustomer() {
}

<@> When("the customer books the flight")
<@> Pending
public void theCustomerBooksTheFlight() {
}

<@> Then("the customer is shown on the flight manifest")
<@> Pending
public void thenTheCustomerIsShownOnTheFlightManifest() {
}

JBehave是将其作为隐式功能提供还是人们使用某些IDE插件?我非常感谢这里的任何帮助。

2 个答案:

答案 0 :(得分:5)

运行JBehave时,它会跟踪所有未找到匹配绑定代码的步骤,并转储相应的存根实现,这与您编写的内容非常相似。 此输出可在控制台上使用,也可在HTML报告中使用(如果已打开它们)。 复制它们并将它们放入您的步骤类中。

如果您要求让JBehave自动将存根实现写入.java文件,那么我非常怀疑存在这样的功能 - 很难知道哪些步骤类和&amp;要使用的文件。 (在SCM集成问题旁边等等。)

答案 1 :(得分:0)

我使用IntelliJBehave:https://github.com/kumaraman21/IntelliJBehave/wiki 它不会自动生成方法,但它确实会让你有一些有用的功能,例如:语法高亮,从步骤到方法的导航,错误突出显示等等。