9

我想将屏幕截图保存在 Watir 中,文件名如ddmmyyyy_hhmmss.png.

我正在尝试关注...

@@filename = Time.now
browser.screenshot.save (@@filename.png)

...但它将文件保存为@@filename.png. 我还需要将文件保存在特定位置。

你能帮帮我吗?


你好泽利科,

我尝试了您的建议,但收到以下错误消息:

C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.26.0/lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb:18:in `initialize': Invalid argument - 2013-01-03 11:02:21 +1100.png (Errno::EINVAL)
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.26.0/lib/selenium/webdriver/common/driver_extensio
ns/takes_screenshot.rb:18:in `open'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.26.0/lib/selenium/webdriver/common/driver_extensio
ns/takes_screenshot.rb:18:in `save_screenshot'

我认为问题是日期和时间戳的格式。

4

2 回答 2

14

试试这个:

browser.screenshot.save ("#{@@filename}.png")

如果要将文件保存在特定位置,请尝试以下操作:

browser.screenshot.save ("/path/to/file/#{@@filename}.png")

当然,替换/path/to/file/为实际路径。

于 2013-01-02T09:16:39.227 回答
2

谢谢您的帮助。

我使用以下来格式化日期和时间部分,现在它正在将屏幕截图保存在所需的位置。

文件名 = DateTime.now.strftime("%d%b%Y%H%M%S")

browser.screenshot.save ("Test/#{filename}.png")

问候

于 2013-01-03T02:34:01.333 回答