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

范围报告 - base64-img 而不是实际屏幕截图

欧阳元魁
2023-03-14

我已经编写了 C# 代码来获取 base64 编码字符串作为屏幕截图并将其放入.html范围报告中。

    private ExtentReports Extent;
    private ExtentTest Test;
------- some other code here ----------

    Test = Extent.CreateTest("name of my test as string");

    public void AddTestFailureScreenshot(string base64ScreenCapture)
    {
        Test.AddScreenCaptureFromBase64String(base64ScreenCapture, "Screenshot on Error:");
    }

    public string ScreenCaptureAsBase64String()
    {
        ITakesScreenshot ts = (ITakesScreenshot)driver;
        Screenshot screenshot = ts.GetScreenshot();
        return screenshot.AsBase64EncodedString;
    }

当报告以.html格式生成时,我无法立即看到嵌入的屏幕截图,而是需要单击 base64-img 链接,然后正常加载图像(图像显示我们的预生产环境之一已关闭)

这发生在Firefox和Google Chrome中。我只是想弄清楚是我提供的扩展数据范围报告代码存在问题,还是浏览器本身的某些配置

以前有人遇到过类似的问题吗?我只是希望屏幕截图无需任何额外的点击即可显示。

共有1个答案

谭灿
2023-03-14

您的问题出在 HTML 中,“href”属性用于链接。您必须使用 “src” 属性。

如本例所示。

我希望它能为您和那些有这种担忧的人服务。

如果您能将我标记为“正确答案”,我将不胜感激。

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

  • 我想让应用程序像“简易屏幕录制器”。我必须从哪里开始,因为我搜索了很多,但没有找到任何开始的链接。有任何用于创建屏幕录制器的api,而不是屏幕截图。我不想使用javacv从屏幕截图创建视频。我只想让用户启动应用程序,点击开始录制按钮,然后用户在手机上所做的一切来录制这些内容。 1) Android系统中是否有相关的api。 2) 如何在android中创建屏幕录制器应用程序。 3)是没有任何api

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

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

  • 我正在从事一个基于Selenium/testng/java/gradle的项目,该项目采用了针对webdriver和extenttest对象的ThreadLocal方法。每当我的测试用例失败时,我都会使用RetryListener再次运行失败的测试用例1次。若它是第二次通过,我的结果仍然在扩展报告中显示为“失败”(注意,所有迭代都记录在html报告中的单个测试节点中)。stackoverflow对

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

  • 问题内容: 这个问题是我提出的另一个问题的一部分。但是,我已经找到了这部分的答案,并认为这对其他人也将是有用的。我其他问题的一部分: 我正在结合使用Serenity和黄瓜来进行自动屏幕测试,并希望在我的Serenity报告中包括整页的屏幕截图。报告中的屏幕截图通常只是视口的捕获。但是,通常这并不能提供足够的信息,因为这只是屏幕的一部分。 我发现捕获宁静屏幕快照是驱动程序实现的一部分。由于大多数驱动

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