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

在扩展报告4中添加失败方案的屏幕截图

汪建白
2023-03-14

我使用的是扩展报告4。实际上,当测试失败时,我试图在扩展报告中添加屏幕截图。我使用下面的代码来实现这一点。截图会附在我的报告的结尾(请参考截图),但我希望截图在适当的步骤中附上,即当测试用例失败时。请帮助我解决方案或变通方法

            case FAIL:
            String path = WrapperMethods.captureScreenshot();
            try 
            {
                test.log(logStatus, message + test.addScreenCaptureFromPath(path));
            } catch (IOException e) 
            {
                e.printStackTrace();
            }
            break;

共有1个答案

萧安怡
2023-03-14

对于第4版,您可以按以下方式工作

if (result.getStatus() == ITestResult.FAILURE) {
            test.fail(MarkupHelper.createLabel(result.getName() + "Test Failed", ExtentColor.RED));
            test.fail(result.getThrowable());
            String screencastPath = null;
            try {
                screencastPath = Screeshot.captureScreenshot(WebDriverManager.driver);
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            try {
                test.fail("<b><font color=blue>" + "Screenshot Name: " + Screeshot.sendScreenName() + "</font></b>");
                test.fail("<b><font color=red>"
                        + " Click the below link OR check the report folder by above screenshot Name to get the Screenshot of failure "
                        + "</font></b>", MediaEntityBuilder.createScreenCaptureFromPath(screencastPath).build());
            } catch (IOException e) {
                test.fail("Test Failed, Cannot attach screeshot");
            }
            WebDriverManager.driver.close();
        }
 类似资料:
  • 我正在尝试使用extent report构建selenium,但无法使用save screenshot函数,因为我无法引用ITestListener类中的WebDriver对象。下面是我的示例代码: 测试转轮。java: TestListener.java公共类TestListener实现ITestListener{ 问题: > 如何将WebDriver对象从TestRunner.java传递给T

  • Cucumber Extent Reports在没有屏幕截图的情况下工作,但是当我想要在Extent report中使用屏幕截图时,我会得到以下例外。 为了制作cucumber范围报告,我只做了配置更改。。。没有代码更改。为了添加截图,我在下面添加了钩子来添加截图API。 波姆。xml: 跑步者代码: 在钩子中添加截图代码: 添加了最后一行- 我使用extent.properties文件和exte

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

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

  • 我在我的项目中使用cucumber版本4。我在我的项目中使用以下依赖项。 使用上述依赖关系,我能够生成“cucumberjvm报告”。 我还用java编写了代码,用于将屏幕截图附加到报告中,我只在场景失败时拍摄屏幕截图。 我不确定是否遗漏了什么,但屏幕截图没有附加到报告中。cucumber生成的默认html报告正在显示屏幕截图。 谁能帮我一下吗。谢谢

  • 问题内容: 你们中有谁知道针对测试失败和异常进行屏幕截图的可能解决方案? 我在其中添加了以下代码,但结果是它也会对通过的测试进行截图,因此它不是最佳解决方案: 我已经找到了这个主意:http: //yizeng.me/2014/02/08/take-a-screenshot-on-exception-with- selenium-csharp-eventfiringwebdriver/ ,可以使用