Использование Selenium ITakeScreenshot возвращает черный экран из окна IE? - PullRequest
0 голосов
/ 20 февраля 2020

У меня есть Class Library.dll с некоторыми тестами SpecFlow, написанными в C# / Selenium, когда я использую стандартный код для захвата скриншота с классом селена, файл просто черное окно?!

Я запустил предыдущие встроенные решения & .dll, который использует те же версии драйверов (Selenium.IE32) и версии браузера, и он прекрасно захватывает экран ... Я использую следующий код.

   ((ITakesScreenshot)driver).GetScreenshot().SaveAsFile(ScreenName, ScreenshotImageFormat.Png);

I Рассматривали возможность использования прямоугольника / растрового изображения для захвата всего экрана, но, похоже, это внутри системы. Windows .Forms Namespace, поэтому я не могу использовать это в типе сборки ClassLibrary.

Есть идеи?

Ответы [ 2 ]

0 голосов
/ 24 февраля 2020

Я достал

driver.Navigate().GoToUrl(StartURL);

И заменил на

options.InitialBrowserUrl = StartURL;

Теперь это снимки действительных скриншотов!

0 голосов
/ 21 февраля 2020

Как запустить IE с помощью селенового веб-драйвера? Какую версию IE webdriver вы используете? Я использую рекомендованную версию IEDriver в на этой странице и использую следующий код. Это может хорошо работать для меня:

using OpenQA.Selenium;
using OpenQA.Selenium.IE;

namespace ecwebdriver
{
    public class webdriver
    {
        static void Main(string[] args)
        {
            IWebDriver driver;
            driver = new InternetExplorerDriver(@"D:\webdriver"); //here you should change to your webdriver path
            driver.Navigate().GoToUrl("http://www.bing.com");
            ((ITakesScreenshot)driver).GetScreenshot().SaveAsFile(@"D:\image\test.png");
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...