使用 Allure 在失败时捕获屏幕截图
Using Allure to capture a screenshot on fail
我一直在玩弄 Allure 框架,我认为如果有任何 error/failure 发生(基本上任何不是通过的事情)我想截屏。
我正在使用 Java/Junit/Maven。
我看到有多种使用@Rule 来执行此操作的方法,但不确定这是否会在报告中保存屏幕截图。
我原以为会有测试用例状态或一些我可以在拆卸过程中检查的东西,但找不到任何东西。
有人有什么想法吗?
JUnit 规定它是失败时保存屏幕截图的默认方式。一个例子:
@Rule
public TestWatcher screenshotOnFailure = new TestWatcher() {
@Override
protected void failed(Throwable e, Description description) {
makeScreenshotOnFailure();
}
@Attachment("Screenshot on failure")
public byte[] makeScreenshotOnFailure() {
return ((TakesScreenshot) driver).getScreenshotAs(OutputType.BYTES);
}
};
我一直在玩弄 Allure 框架,我认为如果有任何 error/failure 发生(基本上任何不是通过的事情)我想截屏。
我正在使用 Java/Junit/Maven。
我看到有多种使用@Rule 来执行此操作的方法,但不确定这是否会在报告中保存屏幕截图。
我原以为会有测试用例状态或一些我可以在拆卸过程中检查的东西,但找不到任何东西。
有人有什么想法吗?
JUnit 规定它是失败时保存屏幕截图的默认方式。一个例子:
@Rule
public TestWatcher screenshotOnFailure = new TestWatcher() {
@Override
protected void failed(Throwable e, Description description) {
makeScreenshotOnFailure();
}
@Attachment("Screenshot on failure")
public byte[] makeScreenshotOnFailure() {
return ((TakesScreenshot) driver).getScreenshotAs(OutputType.BYTES);
}
};