Ruby Selenium截图到特定的文件位置

时间:2017-02-08 22:40:41

标签: ruby selenium automation

我在截取屏幕截图并将其保存到特定文件位置时遇到了一些麻烦:

我有工作代码,可将屏幕截图保存到我工作区的原始文件位置:

driver.save_screenshot(“screenshot.png”)

我希望能够将此屏幕截图保存在我自己的C://Username//RubyTutorial // Screenshots // Screenshot.png

的文件夹中

C://用户名// RubyTutorials是一个已经存在的目录,我希望代码创建一个'Screenshots'文件夹,然后将图像保存在该文件夹中。

我怎么能这样做?

我试过了: 的 driver.save_screenshot( “C://Username//RubyTutorial//Screenshots//Screenshot.png”)

但是我收到“没有这样的文件或目录”的错误

我尝试过将“//”切换为“/”,“\”和“\”的不同尝试

但仍然没有运气。

谢谢:)

1 个答案:

答案 0 :(得分:0)

这是一个简单,人为的示例,演示了如何在使用Dir::mkdir保存屏幕截图之前创建目录:

Dir.mkdir "C:\\screenshots"
driver.save_screenshot "C:\\screenshots\\Screenshot.png"

正如@ Cagy79指出的那样,你必须用双反斜杠来逃避反斜杠。

另外,请记住,如果目录存在,则会引发错误,因此您可能需要检查它(例如Dir.mkdir("C:\\screenshots") unless Dir.exist?("C:\\screenshots"))。并查看文档。 Dir课程中有很多可以让你的生活更轻松。