Java 如何在jbehave中的场景之后获取当前故事/场景
我正在尝试使用“上下文”对象在余震中获取当前正在运行的故事/场景:Java 如何在jbehave中的场景之后获取当前故事/场景,java,jbehave,Java,Jbehave,我正在尝试使用“上下文”对象在余震中获取当前正在运行的故事/场景: Context context = new Context(); String currentScenario = context.getCurrentScenario(); System.out.println("currentScen:" + currentScenario); 但当前场景返回“null”。这是为什么?我如何返回当前运行的故事/场景 非常感谢你的帮助我想你在问两个不同的问题。我会试着
Context context = new Context();
String currentScenario = context.getCurrentScenario();
System.out.println("currentScen:" + currentScenario);
但当前场景返回“null”。这是为什么?我如何返回当前运行的故事/场景
非常感谢你的帮助我想你在问两个不同的问题。我会试着分别处理它们 第一个问题是“为什么创建上下文并调用getCurrentScenario()不会返回当前运行的场景?”。我假设您正在引用org.jbehave.core.context.context类。在这种情况下,您已经创建了上下文的新实例,该实例没有关于当前运行场景的详细信息。所以它返回null是有意义的。某个地方可能有这样一个上下文的StepMonitor,但您无法从该代码访问它 第二个问题是“如何从AfterScenario方法中访问当前场景?”从生命周期方法(在场景/故事/故事之前/之后)中访问此类数据的常规方法是使用reporter。这基本上是一个侦听器,在故事运行时获取事件。然后,您可以跟踪故事/场景/步骤是否正在进行,并将其提供给您生命周期方法。我不会提供一个例子,而是向您指出一个相关的问题,这个问题已经有了一个涵盖相同用例的例子
我想你在问两个不同的问题。我会试着分别处理它们 第一个问题是“为什么创建上下文并调用getCurrentScenario()不会返回当前运行的场景?”。我假设您正在引用org.jbehave.core.context.context类。在这种情况下,您已经创建了上下文的新实例,该实例没有关于当前运行场景的详细信息。所以它返回null是有意义的。某个地方可能有这样一个上下文的StepMonitor,但您无法从该代码访问它 第二个问题是“如何从AfterScenario方法中访问当前场景?”从生命周期方法(在场景/故事/故事之前/之后)中访问此类数据的常规方法是使用reporter。这基本上是一个侦听器,在故事运行时获取事件。然后,您可以跟踪故事/场景/步骤是否正在进行,并将其提供给您生命周期方法。我不会提供一个例子,而是向您指出一个相关的问题,这个问题已经有了一个涵盖相同用例的例子