我想要一个基于 Selenium RC 的自动化 Web 测试套件,以便在遇到某些错误时截取页面的屏幕截图。该测试套件是持续集成过程的一部分,从技术上讲,由作为运行的 CruiseControl 执行Windows服务.
The selenium.captureScreenshot()
调用方法来触发实际的屏幕截图。我已经注册了一个 JUnitRunListener
在任何测试失败时调用它。
问题是截图只是空白文件- PNG 文件全黑。尺寸为 1440x900。
当从 Eclipse 手动运行相同的测试时,屏幕截图是正常的(尽管它们是整个桌面的屏幕截图而不是浏览器窗口,但这是一个不同的故事和一个小问题)。所以我猜问题的原因是 Selenium 作为 Windows 服务运行。
Selenium测试出现异常时如何截取页面截图?
使用的软件:
似乎有一个完全不同的答案。 Windows 服务(由TanukiSoftware Java 服务包装器)开始于wrapper.ntservice.interactive
set to false
。将其设置为true
有帮助。最终屏幕截图包含真实的屏幕内容。
咨询wrapper.ntservice.interactive了解详情。对包装器代码的分析导致[SERVICE_INTERACTIVE_PROCESS
](http://msdn.microsoft.com/en-us/library/ms683502(VS.85).aspx)启动 Windows 服务时设置标志。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)