在JBehave中读取方案的元标记值

时间:2014-10-14 10:12:08

标签: jbehave

我没有获得与JBehave中的Scenario一起使用的标记值。

Scenario: Login
META:
  @dataset LoginTest
Given:
  applicationUrl http://www.gmail.com
When:
  when browser is open
assert:
  exists Login txt_UserName

我正在使用此代码:

@BeforeScenario()
public void BeforeSc(@Named("dataset") String dataset) {

    System.out.println("@BeforeScenario");  
    System.out.println("Test Name : "+dataset);
}

dataset中的BeforeSc为空。

我想在LoginTest方法中获取dataset BeforeSc值。

提前致谢。

1 个答案:

答案 0 :(得分:1)

@BeforeScenario注释不支持命名参数 它仅支持ScenarioType参数,可以是:ANY,EXAMPLE,NORMAL

有关详细信息,请参阅此处:http://jbehave.org/reference/stable/annotations.html

  

@BeforeScenario和@AfterScenario注释允许   在每个场景之前和之后执行的相应方法。   (可选)可以指定ScenarioType仅在执行时执行   那种类型,例如对于通过示例进行参数化的方案。

还有javadoc:
http://jbehave.org/reference/stable/javadoc/core/org/jbehave/core/annotations/BeforeScenario.html
http://jbehave.org/reference/stable/javadoc/core/org/jbehave/core/annotations/ScenarioType.html



之前为所有方案调用方案方法,无论它们是否具有任何元参数。

如果你想调用一些方法并从一些故事中传递一个hash参数,那么在这些故事中使用“给定”或“何时”步骤来做它。