使用Java在黄瓜报告中的每一步之后添加屏幕截图

时间:2019-03-26 13:53:51

标签: java selenium cucumber

我正在尝试在黄瓜报告中的每个步骤之后添加屏幕截图,截至目前钩子工作正常之后,但这将使最后一步的屏幕截图失败,在Java selenium + cumulage中有什么方法可以使用小黄瓜场景中的每个步骤之后的屏幕截图?

2 个答案:

答案 0 :(得分:1)

我认为after step钩是您问题的答案。

答案 1 :(得分:-1)

基本上,您需要一种帮助方法,以便在执行如下所示的每个步骤之后进行屏幕截图-

class Utility{

public static Scenario message;    

public static void takeScreenShotAfterEveryStep() {
        byte[] screenshot = ((TakesScreenshot)DriverManager.getDriver()).getScreenshotAs(OutputType.BYTES);
        message.embed(screenshot, "image/png");
    }
}

调用上述方法,完全取决于您如何实现框架,其中一种方法可能是通过Cucumber hook的@Before method()传递场景引用

@Before
    public void setUpScenario(Scenario scenario){
    Utility.message = scenario; 
}

然后在每个步骤之后调用takeScreenShotAfterEveryStep()