【问题标题】:Take Screen Shot in Background using Selenium使用 Selenium 在后台截屏
【发布时间】:2014-04-04 02:06:17
【问题描述】:

我在 IE 中运行脚本浏览器。 我有一个问题,当我运行脚本并尝试在我的 PC 上执行其他任务时,脚本成功运行,但它捕获了当前窗口的屏幕截图,而不是运行脚本的窗口,即 IE 浏览器

如何捕获运行脚本的浏览器的屏幕截图? 我正在使用以下命令来捕获屏幕

  selenium.captureScreenshot("D:/screen_" + System.currentTimeMillis()+".jpg");      

我想执行脚本并截屏,但同时我想做其他任务。成功执行后,我只想检查我的屏幕截图。

有什么建议吗?

谢谢 杜夏特

【问题讨论】:

  • 您可以尝试在系统上以另一个用户身份运行 selenium 并自动启动它。我在 windows box 上使用 Jenkins 运行我的单元测试。它以普通 Windows 用户的身份运行,IE 配置松散,可以解决其中一些问题。问题是,如果 IE 在提示符下挂起,它可以阻止所有单元测试在此之后继续进行。
  • 这是一个很棒的建议。我一定会尝试这个并检查我是否可以在不同的用户中有效地使用我的脚本。谢谢人

标签: javascript selenium


【解决方案1】:

在当前用户会话中,如果您将焦点移到不同的窗口,那么它将捕获当前窗口。

解决方案 - 在屏幕截图命令之前使用窗口焦点命令,但是当您在其他一些窗口上工作并将其移动到其他窗口时它可能会令人不安

其他解决方案 - 正如卢卡斯提到的 - 在不同的用户会话上运行
或在不同的机器/VM 上运行 或保持机器理想

【讨论】:

  • 我也会试试这个,因为我的脚本很长。每 3-4 分钟拍摄一次屏幕截图。所以至少我可以工作 3-4 分钟,然后再次从脚本窗口切换回我当前的工作窗口。感谢您的建议。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-15
  • 1970-01-01
  • 2015-07-29
  • 2011-03-26
  • 2013-04-29
相关资源
最近更新 更多