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

How to conduct database testing with selenium webdriver?

0 Answers  


How to perform drag and drop action in selenium webdriver?

0 Answers  


What are the advantages of pom?

0 Answers  


What are the two modes of views in selenium ide?

0 Answers  


How can we inspect the web element attributes in order to use them in different locators?

0 Answers  






What are the features of testng and list some of the functionality in testng which makes it more effective?

0 Answers  


Which web driver implementation is the fastest?

0 Answers  


In which format does source view show the script in selenium ide?

0 Answers  


Explain me how to check a checkbox in selenium?

0 Answers  


How to select value in a dropdown?

0 Answers  


How can we launch different browsers in selenium webdriver?

0 Answers  


How can one get side to always record an absolute url for the open command's argument?

0 Answers  


Categories