我正在使用黄瓜和watir-webdriver,我试图在失败时拍摄截图。 通过我发现的示例,它在技术上有效,但创建的png文件是空白或0kb大小。
我尝试过chrome和firefox,并且正在使用win7 x64系统。
我在env.rb文件中添加以下内容。
After do |scenario|
if scenario.failed?
#Dir::mkdir('screenshots') if not File.directory?('screenshots')
screenshot = "./screenshots/FAILED_#{scenario.name.gsub(' ','_').gsub(/[^0-9A-Za- z_]/, '')}.png"
@browser.driver.save_screenshot(screenshot)
embed screenshot, 'image/png'
end
end
如何让它实际捕获屏幕上的内容?
答案 0 :(得分:4)
尝试使用以下方法保存屏幕截图:
browser.screenshot.save 'screenshot.png'
答案 1 :(得分:0)
我通过更新我的chromedriver二进制文件来解决这个问题。要调试这个我用过:
browser.screenshot.save('your_file'.png)
在这一步,我得到了这个错误:
org.openqa.selenium.WebDriverException: unknown error: cannot get automation extension