0
我已经写了一个CucumberJVM测试工具和一大组功能文件来测试我的应用程序。其中一些测试可能需要10到20分钟才能运行,这意味着测试设备似乎会长时间挂起。CucumberJVM:每次测试开始时都需要编写场景名称
为了让我的最终用户对机器没有锁定有信心,我想在每个方案开始时执行的操作是打印方案名称。我知道@Before可以用来定义一个在每次测试开始前都会执行的胶水方法。所以我的问题是:
我已经写了一个CucumberJVM测试工具和一大组功能文件来测试我的应用程序。其中一些测试可能需要10到20分钟才能运行,这意味着测试设备似乎会长时间挂起。CucumberJVM:每次测试开始时都需要编写场景名称
为了让我的最终用户对机器没有锁定有信心,我想在每个方案开始时执行的操作是打印方案名称。我知道@Before可以用来定义一个在每次测试开始前都会执行的胶水方法。所以我的问题是:
“我怎么能在一个@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打在那里,你很好。
感谢您的回答:-)(已经差不多6个月了,我放弃了希望)。对于可能正在查看此答案的其他人员:方法功能(功能f)可用于显示功能文件名称。方法场景(场景s)可用于显示场景名称。两个或1的价格! – Stormcloud
没问题。我的套房大约两分钟长,我不愿意没有任何形式的反馈。我无法想象20分钟后会是什么样子。很高兴这能够帮助。 – benkiefer