2017-07-28 2 views
0
Robot robot = new Robot(); 
BufferedImage screenShot = robot.createScreenCapture(new 
Rectangle(Toolkit.getDefaultToolkit().getScreenSize())); 
ImageIO.write(screenShot, "JPG", new File("ScreenShot.jpg")); 

Ce code capture la capture d'écran de tout ce qui est présent sur l'écran du bureau lorsque les cas de test échouent. Mais j'ai besoin de prendre une capture d'écran de l'écran du navigateur chromedriver avec URL. Comment puis-je capturer le scénario d'erreur dans le sélénium?Selenium Webdriver - Capturer l'URL dans la capture d'écran en utilisant le robot

+0

Ecrire l'URL actuelle dans un journal d'erreur qui accompagne la capture d'écran. – JeffC

Répondre

0

voie normale pour obtenir capture d'écran

WebDriver driver = new FirefoxDriver(); 
driver.get("http://www.google.com/"); 
File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE); 

// Now you can do whatever you need to do with it, for example copy somewhere 
FileUtils.copyFile(scrFile, new File("c:\\tmp\\screenshot.png")); 

si vous devez scénario ne sort pour capturer une capture d'écran, vous pouvez vérifier ce poste How to capture Server Error Pages using selenium Web driver

+0

Pour prendre une capture d'écran en utilisant le robot votre fenêtre doit être visible sinon Robot ne vous aidera pas – kvizer

+1

Les réponses uniquement au code ne sont pas la meilleure façon de répondre à une question. S'il vous plaît ajouter une explication sur pourquoi c'est la réponse à la question. En outre, votre réponse ne répond en aucun cas à la question. – demouser123

+0

Je pense que la question de OP était sur Robot Framework. Merci – DebanjanB

0

pilote Chrome semble être un problème pour les captures d'écran fullsize. Vous pouvez voir que les gens ont écrit un travail autour here

Ou vous pouvez référencer la capture d'écran here