在C#中使用PhantomJS获取屏幕截图
我已经将PhantomJS和Selenium添加到我的C#控制台应用程序中,我希望在它到达特定元素时拍摄浏览器的屏幕截图。 原因是因为出于某种原因,当我使用ChromeDriver时,它工作正常,但是当我使用PhantomJS时,它会在一些元素上失败。
我想我需要介绍如何使用phantomjs在C#中截取屏幕截图。 我在互联网上环顾四周,看起来每个人都在使用java脚本来做这件事。 我遇到的问题是我不知道如何将java脚本集成到我的C#应用程序中,然后使用它与phantomJS来获取屏幕截图。 如果我能得到一些如何做到这一点的帮助,那将是非常好的。
TLDR:我找到了http://code.tutsplus.com/tutorials/testing-javascript-with-phantomjs–net-28243这就是我想要做但我不知道怎么用我的javascript c#app。
正如您所提到的,您已经有适用于Chrome的代码,最好发布它,以便显示您究竟是在追求什么。
但是,以下是如何在C#中使用PhantomJSDriver
截取屏幕截图:
var driver = new PhantomJSDriver(); driver.Manage().Window.Maximize(); // optional driver.Navigate().GoToUrl("http://stackoverflow.com"); driver.TakeScreenshot().SaveAsFile("screenshot.png", ImageFormat.Png); driver.Quit();
请注意,您需要在项目中引用WebDriver.Support.dll
和System.Drawing
。