Smo*_*oke 6 java junit selenium unit-testing cucumber-jvm
我们使用Cucumber-JVM编写验收测试脚本,使用JUnit执行它们(通过JUnit Cucumber运行器).由于这些测试涉及Selenium WebDriver,我希望能够在我的测试失败时获取屏幕截图(我有代码).
如果我只是添加一个WebDriver onException钩子,断言失败时将不会截取屏幕截图.我希望能够向Cucumber运行器添加一个JUnit执行侦听器,但API似乎不支持这一点(在Cucumber.class上没有addListener方法).
有人可以帮忙吗?谢谢团队.
我通常在@After
钩子中截取屏幕截图,在每个黄瓜场景之后调用它.@After
hook方法采用特殊Scenario
对象,以便您可以将截图嵌入报表中.以下是如何在场景失败时拍摄屏幕截图的示例,
@After
public void tearDown(Scenario scenario) {
try {
if (scenario.isFailed()) {
final byte[] screenshot = ((TakesScreenshot) driver)
.getScreenshotAs(OutputType.BYTES);
scenario.embed(screenshot, "image/png");
}
} finally {
driver.quit();
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4415 次 |
最近记录: |