参考了: http://blog.csdn.net/sunnyyou2011/article/details/45894089
http://www.seleniumeasy.com/testng-tutorials/how-to-take-screenshot-for-only-failed-tests-using-webdriver
大致分三步走: 一、先写个java类继承TestListenerAdapter。二、重写onTestFailure, onTestSkipped等方法,在这些方法中加入截图操作。三、把这个listener添加到testng.xml文件上。
一二、写个java类继承TestListenerAdapter & 重写onTestFailure, onTestSkipped等方法,在这些方法中加入截图操作。
public class ScreenshotListener extends TestListenerAdapter {
private static Logger logger = Logger.getLogger(TestngListener.class);
public static final String CONFIG = "config.properties";
@Override
public void onTestFailure(ITestResult tr) {
super.onTestFailure(tr);
logger.info(tr.getName() + " Failure");
takeScreenShot(tr);
}
@Override
public void onTestSkipped(ITestResult tr) {
super.onTestSkipped(tr);
logger.info(tr.getName() + " Skipped");
takeScreenShot(tr);
}
@Override
public void onTestSucc