Obtenir une capture d'écran à l'aide de PhantomJS en C #

J'ai ajouté PhantomJS et Selenium à mon application de console C # et je veux prendre une capture d'écran du navigateur lorsqu'il obtient un élément spécifique. La raison en est que pour une raison quelconque lorsque j'utilise le ChromeDriver, cela fonctionne bien, mais quand j'utilise PhantomJS, il échoue sur quelques éléments.

Je suppose que j'ai besoin d'une introduction sur la façon de prendre une capture d'écran en C # en utilisant phantomjs. J'ai regardé autour de l'internet et il semble que tout le monde utilise des scripts java pour le faire. Le problème que j'ai, c'est que je ne sais pas comment intégrer les scripts java dans mon application C #, puis utiliser avec phantomJS pour obtenir la capture d'écran. Si je peux obtenir de l'aide sur la façon de le faire, ce serait très agréable.

TLDR: J'ai trouvé http://code.tutsplus.com/tutorials/testing-javascript-with-phantomjs–net-28243 et c'est ce que je veux faire, mais je ne sais pas comment utiliser javascript dans mon Application c #.

Comme vous l'avez mentionné, vous avez déjà utilisé le code pour Chrome, il est préférable de l'afficher, afin de montrer ce que vous recherchez exactement.

Cependant, voici comment prendre une capture d'écran à l'aide de PhantomJSDriver en C # en général:

 var driver = new PhantomJSDriver(); driver.Manage().Window.Maximize(); // optional driver.Navigate().GoToUrl("http://stackoverflow.com"); driver.TakeScreenshot().SaveAsFile("screenshot.png", ImageFormat.Png); driver.Quit(); 

Notez que vous devez référencer WebDriver.Support.dll et System.Drawing dans votre projet.