selenium web驱动程序中错误页面的java屏幕截图,显示错误发生的日期以及错误发生的页面或链接
我的情况是,在我的网站上点击几个按钮/链接时,我会看到相同的错误页面。我有一个根据日期时间戳截图的代码示例,但我还想获取它发生在哪个按钮或链接单击事件上,并想将该事件名称附加到截图文件中。 请帮忙。 提前谢谢
到目前为止,这就是我所拥有的
try{
My code where the error occures on button click
}
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="D:/Home/Snapshot/"+strDate1+"/"; // create a folder as snapshot in your project directory
// Creating folders and files
File f = new File(filefolder+strDate+".jpeg");
FileUtils.copyFile(scrn, new File(f.getPath()));
}
# 1 楼答案
# 2 楼答案
将屏幕截图的整个代码放在一个方法中,比如
take_screenshot
,然后将其放在一个公共位置,比如,并将一个参数传递给它,该参数的名称为而且
MyLib.TakeScreenshot
有你上面写的代码。排队改为:
# 3 楼答案
一种方法是创建一个代理类,该类实现WebDriver接口(或仅实现所需的方法),并将真正的WebDriver对象作为构造函数参数。通过这种方式,您可以使用代理对象的方法,代理对象将截图显示引发异常的事件的信息