0

我创建了一个获取屏幕截图然后写入 html 文件的方法,将该屏幕截图插入到表格中。

当我使用 Watir 时,它运行良好(仅真正使用过 IE 浏览器)。

现在我正在使用 Watir-Webdriver,它会截取屏幕截图(在 Firefox 上)并将它们保存得很好。但是,当我将它们写入 html 文件时,它们只会在我的 html 页面上显示为小撕纸图标。

这是我的方法:

def LogCapture(testID, passFail)

@passFail = passFail
@testID = testID
@time = Time.now.strftime("%m.%d.%Y %H.%M.%S")
@shotLoc = $FolderPath + "\\" + @passFail + @time + ".png"
$browser.screenshot.save @shotLoc

$fileHtml.puts"<TR><TD><@testID + " " + @passFail + " " + @time + "></TD></TR>"
$fileHtml.puts"<TR><TD><img src='" + @shotLoc + "'></TD></TR>" 
$log.info(@passFail)

end

我知道 Watir-Webdriver 屏幕截图捕获了页面的整个长度,这与 Watir 不同,但我不知道为什么屏幕截图无法显示在我的 html 文件/页面上。

谢谢大家

*解决方案:在写入 html 文件时让它同时显示在 FF 和 IE 中,我只需要在我的文件路径之前包含:“file:\\localhost\”。

谢谢贾斯汀!去枫叶!

4

1 回答 1

0

我更喜欢以 base64 格式保存屏幕截图,而不是保存为 PNG 文件,因为它可以解决所有路径问题并且易于保存历史记录:

screenshot = $browser.screenshot.base64
$fileHtml.puts "<img src='data:image/png;base64,#{screenshot}'>"
于 2013-06-08T04:13:19.790 回答