Wie man den Bildschirm shot für fehlgeschlagene Testfälle mit selenium webdriver in Java?
Kann einer bitte helfen Sie screenshots und speichern auf bestimmte Ordner auf dem Mac laufen, während selenium webdriver Automatisierung-Skripte mit java??
Hinweis: ich benutzte statische in meinem code, so kann ich folgenden code verwenden,
File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(scrFile, new File("D:\\screenshot.jpg"));
Vielen Dank im Voraus !!
- mögliche Duplikate von Nehmen Sie einen screenshot mit Selenium WebDriver
- Aber, der code ist der gleiche wie oben, die ergriffen werden können, nur ein Screenshot und nicht, wenn nicht so noch etwas mehr für die oben genannten code... Kannst du mir bitte helfen?? @Mystia
- Ehrlich gesagt kann ich nicht ganz verstehen, was ist Ihre eigentliche problem?
- Der obige code gibt mir nur ein Bild für alle Testfälle, die aufgrund der code oben hat einen Namen "screenshot.jpg". Ich will einen code für die Abbildung auf mehrere test-Fälle, wenn nicht !! Ich hoffe, Sie haben mich??
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie mit JUnit 4 haben, können Sie eine Klasse erstellen, erstreckt sich die TestWatcher Klasse.
In der Sie testen, fügen Sie einen öffentlichen Bereich der Klasse und wenn der test fehlschlägt, wird die Regel nehmen die Abbildung.
Ordner
Können wir TakeScreenshot Methode in eigene Methode mit @AfterMethod in testNG. ITestResult Schnittstelle an Selen gibt Ihnen den status der Testausführung und der name des Testfalls.
ZB :
, Statt einen statischen Namen für eine screenshot-Datei, wie ( "screenshot.jpg" ), alles, was Sie tun müssen, ist, um es zu ändern, jedes mal, wenn Sie einen screenshot machen. Was Sie tun können, in vielen verschiedene weisen.
Eine der Optionen, die Sie haben in diesem Fall sein kann, erstellen Sie eine Zeichenfolge mit Datum und Uhrzeit, der einzigartig sein, wie diese:
Die erste Zeile code, c# hoffe Ihr könnt es übersetzen zu Java, wenn es nicht die gleichen.
Sind Sie in der Lage, um einige Wrapper für den Betrieb, um Ihr problem zu lösen. Hier möchte ich ein java-Beispiel für Sie. Hoffe, es hilft.
ScreenshotUtil.java
Click.java