2016-07-26 11 views
0

Ich versuche, den Screenshot während der Ausführung Selen Skript zu erfassen. Aber ich bekomme einen Fehler. jemand hilft mir dabei, es zu lösen.screenshot in selen webdriver gescheitert

java.lang.ArrayIndexOutOfBoundsException: 123 bei org.openqa.selenium.internal.Base64Encoder.mapCharToInt (Base64Encoder.java:89) bei org.openqa.selenium.internal.Base64Encoder.decode (Base64Encoder. java: 76) bei org.openqa.selenium.OutputType $ 2.convertFromBase64Png (OutputType.java:57) bei org.openqa.selenium.OutputType $ 2.convertFromBase64Png (OutputType.java:1) bei org.openqa .selenium.OutputType $ 3.convertFromBase64Png (OutputType.java:75) um org.openqa.selenium.Output Typ $ 3.convertFromBase64Png (OutputType.java:1) bei org.openqa.selenium.remote.RemoteWebDriver.getScreenshotAs (RemoteWebDriver.java:339)

unten Code verwenden,

File scrFile = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE);  
      nextVal = seq.incrementAndGet(); 
      FileUtils.copyFile(scrFile, new File("./Screenshots/Sanity/" + nextVal + ".png")); 
+0

Was ist die genaue Version Ihres webdriver jar? –

+0

selen-2.53.1.jar –

+0

Es ist nichts falsch mit Ihrem Code. Dies liegt wahrscheinlich an der Treiberimplementierung. Wenn dies nicht nur ein vorübergehendes Laufzeitproblem ist, sollten Sie eine andere Selen-Version ausprobieren. –

Antwort

0

Das Problem wurde behoben, nachdem mein selen webdriver jar und Chromedriver [2.23] auf die neueste Version aktualisiert wurden. Jetzt können wir Screenshots ohne Probleme während des Laufens aufnehmen.