2014-01-15 24 views
0

我已经写了一个CucumberJVM测试工具和一大组功能文件来测试我的应用程序。其中一些测试可能需要10到20分钟才能运行,这意味着测试设备似乎会长时间挂起。CucumberJVM:每次测试开始时都需要编写场景名称

为了让我的最终用户对机器没有锁定有信心,我想在每个方案开始时执行的操作是打印方案名称。我知道@Before可以用来定义一个在每次测试开始前都会执行的胶水方法。所以我的问题是:

回答

1

“我怎么能在一个@Before所注解的方法得到的方案命名为”我假设你正在使用JUnit运行,所以这里有一个简单的例子。

@RunWith(Cucumber.class) 
@CucumberOptions(
     features = "classpath:features/something.feature", 
     format = "com.blah.PrintingFormatter", 
     glue = "com.blah.steps") 
public class CucumberTest { 

} 

那么你PrintingFormatter应该实现gherkin.formatter.Formatter接口,特别是startOfScenarioLifeCycle方法。把你的println打在那里,你很好。

+0

感谢您的回答:-)(已经差不多6个月了,我放弃了希望)。对于可能正在查看此答案的其他人员:方法功能(功能f)可用于显示功能文件名称。方法场景(场景s)可用于显示场景名称。两个或1的价格! – Stormcloud

+0

没问题。我的套房大约两分钟长,我不愿意没有任何形式的反馈。我无法想象20分钟后会是什么样子。很高兴这能够帮助。 – benkiefer

相关问题