在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.dllSystem.Drawing