[英]How to get current story/scenario in after scenario in jbehave
我正在嘗試使用“上下文”對象在afterScenario中獲取當前的運行故事/場景:
Context context = new Context();
String currentScenario = context.getCurrentScenario();
System.out.println("currentScen:" + currentScenario);
但currentScenario返回“ null”。 為什么會這樣,以及如何返回當前的運行故事/場景
非常感謝您的幫助
我認為您在問兩個不同的問題。 我將嘗試分別解決它們。
第一個問題是“為什么創建上下文並調用getCurrentScenario()不會返回當前正在運行的方案?”。 我假設您正在引用org.jbehave.core.context.Context類。 在這種情況下,您已經創建了上下文的新實例,該實例沒有有關當前運行方案的詳細信息。 因此,這返回空值是有意義的。 某個地方可能有一個具有此類上下文的StepMonitor,但是您無法從該代碼訪問它。
第二個是“如何從AfterScenario方法中訪問當前方案?” 從生命周期方法內部(方案之前/之后/故事/故事/故事)訪問此類數據的常規方法是使用報告器。 基本上,這是一個在故事運行時獲取事件的偵聽器。 然后,您可以跟蹤故事/場景/步驟是否在進行中,並將其提供給您的生命周期方法。 除了提供示例之外,我將為您指出一個相關的問題,該問題已經有一個涵蓋相同用例的示例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.