我正在尝试截取在 C# 中的 Selenium WebDriver 中执行的测试的屏幕截图。我正在使用 Gallio 运行我的测试。下面是我的截图代码:
public void TakeScreenshot(IWebDriver driver, string saveLocation)
{
ITakesScreenshot screenshotDriver = driver as ITakesScreenshot;
Screenshot screenshot = screenshotDriver.GetScreenshot();
screenshot.SaveAsFile(saveLocation, ImageFormat.Png);
}
我在测试中使用以下代码截取屏幕截图:
IWebDriver driver = new ChromeDriver();
TakeScreenshot(driver, @"C:\screenshot.png");
问题是在执行时,该语句会打开一个新的 chrome 窗口,然后弹出一个错误。我的目标是截取现有运行脚本的屏幕截图。我应该做哪些改变来实现这一点?
PS - 有没有办法在不初始化新驱动程序的情况下执行测试时截取屏幕截图?