当前位置: 首页 > 知识库问答 >
问题:

如何在Cucumber报告中嵌入每个动作的屏幕截图?

邹博明
2023-03-14

我看到有人为此发了一篇帖子,在用JAVA和Cucumber进行测试的每一步之后,如何捕捉屏幕截图?

但是,我想做的是能够在每一个动作之后,甚至在一个Cucumber步骤内,拍摄一个屏幕截图,并将其嵌入Cucumber报告中。换句话说,在一个步骤中有多个动作可以满足这个步骤,我想为所有动作嵌入屏幕截图。这可能吗?如果是,怎么做?

共有1个答案

茅星雨
2023-03-14

您可以在钩子类中使用@BeforeStep或@AfterStepcucumber注释,然后在其中调用您的屏幕截图方法

public class Hooks{
    @BeforeStep
    public void beforeEachStep(){
        takeScreenshot();
    }
}
 类似资料:
  • 在软断言截图得到捕获时softAssertions.assertAll()被调用.因此,为捕获屏幕截图为每个软断言失败,创建了简单的CustomAssertion它扩展到SoftAssertions并在其中覆盖一个方法名称onAssertionErrorCollected(). 下面是示例代码。 在步骤定义文件中: 以上代码工作正常。但是,如何将这些截图附加/嵌入到cucumber报告中?注意:对

  • 我无法看到截图被捕获在cucumber的程度报告。 我已经调试并观察到代码已经执行,但屏幕截图并没有保存在extent report或html report文件中。 截图代码 if(scenario.isFailed()){byte[]screenshot=seleniumitls.captureShot();scenario.public void screenshot(scenario sce

  • 问题内容: 我正在将 SpecFlow 与 Selenium WebDriver 和 SpecRun一起 用作测试运行器来创建和执行自动化测试用例,并且正在寻找一种在测试执行报告中插入屏幕截图的解决方案。 我编写了一种在每个函数之后创建屏幕截图的方法。图像保存到特定位置,但是当我进行结果分析时,我也必须遵循报告和图像。最好将它们放在相同的位置(恰好在报告html中)。 有什么方法可以执行此操作(类

  • 问题内容: 目前,我正在以这种方式拍摄测试失败的屏幕截图: 我可以将自己的屏幕截图包含在TestNG报告链接或图片中吗?如果是,怎么办? 我在网上发现的只是FEST框架。但是由于我已经在截屏了,所以我不想使用其他框架。 问题答案: 是的,您可以在testng报告中包含指向屏幕截图的链接。 您需要通过使用@Listeners({yourListener.class})注释您的测试类或所有测试类的父级

  • 问题内容: 目前,我正在以这种方式拍摄测试失败的屏幕截图: 我可以将自己的屏幕截图包含在TestNG报告链接或图片中吗?如果是,怎么办? 我在网上发现的只是FEST框架。但是由于我已经在截屏了,所以我不想使用其他框架。 问题答案: 是的,您可以在testng报告中包含指向屏幕截图的链接。 您需要调用方法以通过@Listeners({yourListener.class})注释您的测试类或所有测试类

  • 我正在尝试使用extent report构建selenium,但无法使用save screenshot函数,因为我无法引用ITestListener类中的WebDriver对象。下面是我的示例代码: 测试转轮。java: TestListener.java公共类TestListener实现ITestListener{ 问题: > 如何将WebDriver对象从TestRunner.java传递给T