有什么方法可以控制testNG报告中附加图像的大小?

时间:2019-07-23 12:50:22

标签: selenium-webdriver testng

我一直试图在Test-Output文件夹中捕获的testNG报告中捕获通过/失败测试的屏幕截图。我已经成功地做到了这一点,但是我希望现在的情况有更多的改善。

屏幕截图以全尺寸显示并覆盖了整个屏幕,我想使它在报告中显得更小,然后用户可以单击它以查看最大化的图像。

我正在静态TakeScreenshot方法中借助Reporter.log(ScreenshotPath)捕获屏幕快照,这是测试用例中finally块的一部分。

        public static void TakeScreenshotMethod() throws IOException {
        File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
        File ScreenshotName = new File(UtilityClass.ScreenshotPathCustomerPortal + count +".jpg");
        FileUtils.copyFile(scrFile, ScreenshotName);

        String filePath = ScreenshotName.toString();
        String path = "<img src=\"file://" + filePath + "\" alt=\"\"/>";
        Reporter.log(path);
        count++;
        }

我想控制报表中显示的图像的大小。

2 个答案:

答案 0 :(得分:0)

如果您在默认的TestNG报告中要求此行为,则答案为不可能。。 TestNG报告与嵌入其中的内容无关。因此,TestNG不知道图像或视频是否嵌入其中。因此,如何渲染它们也没有什么不同。

如果您想控制这些行为,则应执行以下操作之一:

  1. 通过实现org.testng.IReporter接口,然后通过<listeners>标记或@Listeners接口或服务提供者接口机制在此侦听器中建立自己的具有此行为的自定义报告程序。您可以从我的博客文章here中了解有关侦听器接线的一般信息。
  2. 您可以浏览一些已经存在的报告解决方案,例如魅力报告(或程度报告)等,并查看其中一种是否符合您的要求,而改用它们。

TestNG在其中没有任何作用。

答案 1 :(得分:0)

您可以通过添加一个<img>像普通的html一样,带有一些属性(宽度,高度),来稍微修改 style 标记,如下所示:

String path = "<img src=\"file://" + filePath + "\" alt=\"\" style=\"width: 230px; height :500px;\" />";