我创建了一个方法,它截取屏幕截图,然后写入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中显示: “文件:\\本地主机\” 在我的文件路径之前。
谢谢贾斯汀!去枫叶!
答案 0 :(得分:0)
我更喜欢以base64格式保存屏幕截图,而不是保存到PNG文件,因为它解决了所有路径问题并且很容易保留历史记录:
screenshot = $browser.screenshot.base64
$fileHtml.puts "<img src='data:image/png;base64,#{screenshot}'>"