How to capture the screenshot of failed testcase only among a set of testcases?

Answers were Sorted based on User's Feedback



How to capture the screenshot of failed testcase only among a set of testcases?..

Answer / suresh vemula

First we have to create a method of screen shot using java.

After that we have annotation in testng to identify the failure test case or methods using "iTestResult"

This iTestResult using only where annotation in aftermethod

@Aftermethod
Public void test(iTestResult.FAILURE==result.getStatus()){

Utility.screenshot(driver,result.getname());
}

Here utility.screenshot is java class to created for screenshot

Here getName() returns the failure test case name
Then you have to identify the failure test easily

Is This Answer Correct ?    3 Yes 0 No

How to capture the screenshot of failed testcase only among a set of testcases?..

Answer / kiran212

package TestNG;

import java.io.File;
import java.io.IOException;

import org.apache.commons.io.FileUtils;
import org.openqa.selenium.By;
import org.openqa.selenium.OutputType;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.ITestResult;
import org.testng.annotations.AfterClass;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;

public class Screenshot {
WebDriver driver;
@BeforeClass
public void setup() {
driver = new FirefoxDriver();
driver.get("http://google.com");
}

@Test
public void tc01() {
driver.findElement(By.xpath("wrong xpath"));
}
@Test
public void tc02(){

System.out.println(driver.getTitle());

}

@AfterClass
public void browserKill() {
driver.close();
}
//screenshot method for failure test cases
@AfterMethod(alwaysRun=true)
public void takeScreenShot(ITestResult result) throws IOException{
if(result.getStatus()==2){
String testName = result.getMethod().getMethodName();
File srcFile = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(srcFile, new File("D://"+testName+".jpeg"));
}
}
}

Is This Answer Correct ?    2 Yes 1 No

Post New Answer

More Selenium Interview Questions

What is the difference between driver.getwindowhandle() and driver.getwindowhandles() in selenium webdriver?

0 Answers  


Write a code snippet to navigate back and forward in browser history?

1 Answers  


What is the wait?

1 Answers  


How to perform double click action in selenium webdriver?

1 Answers  


How to iterate through options in test script?

1 Answers  


selenium can handle pop-up windows based on selenium is a test tool?

1 Answers  


What is a hub in selenium grid?

1 Answers  


What are the different ways in which selenium ide can be opened?

1 Answers  


What are the different type of locators?

2 Answers   Genpact,


How do perform drag and drop using webdriver?

1 Answers  


What is the architecture of selenium rc?

1 Answers  


What are the Different Types of Waiting in the WebDriver?

1 Answers  


Categories