在Listener类中捕获Selenium失败屏幕截图的问题

时间:2012-08-12 09:02:55

标签: selenium webdriver screenshot selenium-webdriver reportng

我正在使用ReportNG的监听器类来捕获失败的测试用例的屏幕截图。问题是当我在监听器类中使用以下时:

WebDriver driver = new FirefoxDriver();
File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);

问题:Webdriver打开另一个空白浏览器窗口,因为侦听器类没有做任何事情。并且捕获空白屏幕截图。

所以我的目标是从Listener类中获取基类编写的失败测试用例的屏幕截图。

请帮帮我。

2 个答案:

答案 0 :(得分:0)

如果您使用new FirefoxDriver();实例化新的webDriver。 Web驱动程序不知道要打开哪个地址。您必须在拍摄屏幕截图之前调用webDriver.get()方法。

答案 1 :(得分:0)

我通过定义一个静态方法来解决它,该方法用于在Base类中捕获屏幕截图并在我的Listener类中按类名调用它。

谢谢大家。