问题 GDI + selenium webdriver中发生了一般错误


我在GDI +中发生了selenium webdriver的一般性错误。昨天工作正常,但突然间我得到了这个错误。

   public string TakeScreenshot(IWebDriver driver, string SnapFolderPath, string TCID, string KeyFunction)
    {
        try
        {
            //  driver.Manage().Window.Maximize();
            ITakesScreenshot ssdriver = driver as ITakesScreenshot;
            Screenshot screenshot = ssdriver.GetScreenshot();
            string filePath = testReport + "\\" + TCID + "_" + KeyFunction + "_" + GetDateTimeforFilePath() + ".png";
            screenshot.SaveAsFile(filePath, ImageFormat.Png);

            return filePath;
        }
        catch (Exception ex)
        {
            return string.Empty;
        }
    }

11240
2017-09-11 05:11


起源

外部异常:。{“GDI +中发生了一般错误。”} - Pat
我看到你已经解决了它,但仅供进一步参考,这不是来自Selenium,它来自GDI库。 (Selenium只是从Microsoft调用一些.NET代码来保存屏幕截图) - Arran


答案:


解决了这个问题。我们需要为我们要存储图像的文件夹提供完全访问权限。如果我们没有给予完全权限,我们会收到此错误


16
2017-09-11 09:29



另一个潜在的问题,我给它一个不存在的目录名称,它不会自动创建它。您需要先创建目录。 - Sam Woods
我有一个类似的问题,两个selenium驱动程序每个都写一个图像到同一个文件(即具有相同的文件名)。 - thab