有没有办法在类中不为您的屏幕截图代码提示一个新窗口?
这是我在代码中调用该类的地方:
findText(By.xpath("//*[text()='Table']")).click
pause(3)
findLink(By.cssSelector("button.btn.btn-link[aria-label='Maximize']")).click
new takesScreenshot();
findLink(By.cssSelector("button.btn.btn-link[aria-label='Dashlet Actions']")).click
这是我的屏幕截图类代码:
public class takesScreenshot {
{
WebDriver driver = new ChromeDriver();
File tempFile = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE);
try {
FileUtils.copyFile(tempFile,new File( "C:\\Screenshots\\"+ "SS1" + ".png"));
} catch (IOException e) {
// TODO handle exception
}
现在,当该类被调用时,它会提示一个新窗口,这就是为什么我无法对应该捕获的内容进行截图,请帮忙谢谢!
答案 0 :(得分:3)
它是因为您要在takeScreenshot方法中启动新的Chrome驱动程序实例。删除该行:
WebDriver driver = new ChromeDriver();
如果需要驱动程序实例,则可能需要将其传递给takeScreenshot方法