2013-05-01 46 views
4

我正在使用黃瓜和watir-webdriver,並試圖截圖失敗。 通過我找到的例子,它在技術上是可行的,但是創建的png文件是空白或大小爲0kb。與Watir保存屏幕截圖的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 

我怎樣才能實際捕獲屏幕上的內容?

回答

4

嘗試保存屏幕截圖與此:

browser.screenshot.save 'screenshot.png' 

的更多信息:http://watirwebdriver.com/screenshots/

+0

我有完全一樣的問題,這個固定爲我與Firefox,但我仍然有使用Chrome的問題要調試這個我都習慣了。我試過輸出base-64編碼圖像,它的行爲相同(與FF一起使用,Chrome使用空白) – Steve 2013-12-31 12:47:58

0

我通過更新我的chromedriver二進制文件,解決了這個問題。本步驟中,在那裏我得到這個錯誤 browser.screenshot.save('your_file'.png)org.openqa.selenium.WebDriverException: unknown error: cannot get automation extension