我的方案是,我在网站上的许多按钮点击时都得到相同的错误页面。 我想截取同一个错误页面的屏幕截图,并参考该错误页面发生在该站点的哪个链接。 因此,只要在任何点击时出现此错误页面,我都希望屏幕截 你能建议我如何编写这个函数以及如何在selenium Webdriver中的其他函数中调用该函数。 请分享一些代码示例。
截至目前,我的编写方式仅为:
File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE); FileUtils.copyFile(scrFile, new File("D:\\Home\\Ruchi\\failure.png"));
但在此我需要在每次发生故障后编写这些代码行。
答案 0 :(得分:1)
使用try和catch块
try{
// Put your script here
}
catch(Exception ex)
{
File scrn=((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
// extracting date for folder name.
SimpleDateFormat sdfDate1 = new SimpleDateFormat("yyyy-MM-dd");//dd/MM/yyyy
Date now1 = new Date();
String strDate1 = sdfDate1.format(now1);
// extracting date and time for snapshot file
SimpleDateFormat sdfDate = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss");//dd/MM/yyyy
Date now = new Date();
String strDate = sdfDate.format(now);
String filefolder="./Snap/"+strDate1+"/"; // create a folder as snap in your project directory
// Creating folders and files
File f = new File(filefolder+strDate+".jpeg");
FileUtils.copyFile(scrn, new File(f.getPath()));
}
如果您的脚本失败,程序将跳转到catch块,然后代码将为您拍摄屏幕
希望它会对你有所帮助:)。