Take a screenshot with Cucumber
cucumber, cucumber-cpp, cucumber-junit, cucumber-jvm
Solution
Screenshots in general are taken when something unexpected occurs. You may also want to capture a screenshot to report when a test case fails. In this particular case, you should have screenshot capture logic in an @After method that will be executed for every scenario. A Java, selenium version,
@After("@browser")
public void tearDown(Scenario scenario) {
if (scenario.isFailed()) {
final byte[] screenshot = ((TakesScreenshot) driver)
.getScreenshotAs(OutputType.BYTES);
scenario.embed(screenshot, "image/png"); //stick it in the report
}
driver.close();
}
Problem
I just learn how to use cucumber. Can you tell me how to complete this code? You can implement step definitions for undefined steps with these snippets: ``` Then /^I take a screenshot$/ do pending # express the regexp above with the code you wish you had end ```