我一直试图在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++;
}
我想控制报表中显示的图像的大小。
答案 0 :(得分:0)
如果您在默认的TestNG报告中要求此行为,则答案为不可能。。 TestNG报告与嵌入其中的内容无关。因此,TestNG不知道图像或视频是否嵌入其中。因此,如何渲染它们也没有什么不同。
如果您想控制这些行为,则应执行以下操作之一:
org.testng.IReporter
接口,然后通过<listeners>
标记或@Listeners
接口或服务提供者接口机制在此侦听器中建立自己的具有此行为的自定义报告程序。您可以从我的博客文章here中了解有关侦听器接线的一般信息。TestNG在其中没有任何作用。
答案 1 :(得分:0)
您可以通过添加一个<img>
像普通的html一样,带有一些属性(宽度,高度),来稍微修改 style
标记,如下所示:
String path = "<img src=\"file://" + filePath + "\" alt=\"\" style=\"width: 230px; height :500px;\" />";