sha*_*anz 5 html c# base64 selenium extentreports
我一直在使用 base64 图像作为屏幕截图附加到我的 HTML 范围报告中。
我一直在使用的代码如下。
Screenshot file = ((ITakesScreenshot)driver).GetScreenshot();
string image = file.AsBase64EncodedString;
exTest.Fail(msg, MediaEntityBuilder.CreateScreenCaptureFromBase64String(image).Build());
System.Diagnostics.Trace.WriteLine("FAIL >>>> " + msg);
Run Code Online (Sandbox Code Playgroud)
这是提供一个范围报告,其中包含我的屏幕截图图像的相对路径,如下所示。[这是我的期望]
这里显示的是 Base 64 按钮,而不是图像。我需要查看图像的缩略图而不是该按钮,并且图像仍然应该是 Base64(与 HTML 文件不相关)。请帮助我实现这一目标。
编辑:我正在使用范围报告 C# v3.1.3
你必须自己做这件事。这是我使用 jsoup 的方法:
public static void addThumbnailToScreenshot(String filePath) throws IOException {
File file = new File(filePath);
Document report = Jsoup.parse(file, "UTF-8");
Elements elements = report.select("a[data-featherlight='image']");
for (Element element : elements) {
if (element.attr("href").startsWith("data:image/png;base64")) {
String thumbnail = String.format("<img class='r-img' src='%s'>", element.attr("href"));
element.select("span").remove();
element.append(thumbnail);
}
}
BufferedWriter htmlWriter =
new BufferedWriter(new OutputStreamWriter(new FileOutputStream(filePath), "UTF-8"));
htmlWriter.write(report.outerHtml());
htmlWriter.close();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1646 次 |
| 最近记录: |