Wie nehmen Sie den screenshot und hängen Sie es an Reiz Berichts zu erhalten, während mit Gurke und JUnit?
Ich bin mit Cucumber, Selenium, Java, Maven und JUnit-Stapel in meinem automation-test-Projekt.
Ziel ist es, screenshots zu machen, die auf fehl und defekte tests. Ich habe die Lösung gefunden für Java/Maven/JUnit-stack:
@Rule
public TestWatcher screenshotOnFailure = new TestWatcher() {
@Override
protected void failed(Throwable e, Description description) {
makeScreenshotOnFailure();
}
@Attachment("Screenshot on failure")
public byte[] makeScreenshotOnFailure() {
return ((TakesScreenshot) driver).getScreenshotAs(OutputType.BYTES);
}
};
Aber es funktioniert nicht bei der Verwendung von Gurken, weil es nicht alle @Test-Methoden.
So, ich habe beschlossen, das zu ändern @ - Regel @ClassRule, um es zu hören fehlschlägt, so ist es hier:
@ClassRule
public static TestWatcher screenshotOnFailure = new TestWatcher() {
@Override
protected void failed(Throwable e, Description description) {
makeScreenshotOnFailure();
}
@Attachment("Screenshot on failure")
public byte[] makeScreenshotOnFailure() {
logger.debug("Taking screenshot");
return ((TakesScreenshot) Application.getInstance().getWebDriver()).getScreenshotAs(OutputType.BYTES);
}
};
Und diese Lösung hat mir nicht helfen.
So, die Frage ist: "Wie man screenshots Anhängen auf fail, wenn ich mit Java/Selenium/Gurke/JUnit/Maven in meinem test-Projekt?"
- Auch mir zugewandt gleiche problem. Screenshot eingefangen, aber nicht erscheinen, als Anlage in allure Bericht. Ich bin mit Java+Maven+TestNG+Allure.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Lösung ist einfach zu fügen Sie folgenden code zu Ihrer definition von Klassen:
In der GlobalGlue
Erstellen Sie eine weitere Klasse WebDriverUtility und in diesem add-Methode:
und
}
den wichtigsten Teil ist, dass Sie brauchen, um das einbetten der Screenshot in Szenario wenn Szenario ist fehlgeschlagen:
ExecutionContext.java
Diese Weise können Sie Bildschirme, um Ihre Faszination Bericht.
Auch die Neueste allure-version in Ihrem pom-Datei
Pom-Datei :