Когда я делаю скриншоты с ChromeDriver, я получаю экраны с размером моего окна просмотра.
Когда я делаю скриншоты с FirefoxDriver, я получаю то, что хочу, это полноэкранный отпечаток веб-сайта.Selenium WebDriver C# Полный скриншоты сайта с ChromeDriver и FirefoxDriver
ChromeDriver объявлен как это:
IWebDriver driver = new ChromeDriver();
FirefoxDriver объявлен как это:
IWebDriver driver = new FirefoxDriver();
Оба пилота выполнить идентичный код:
driver.Manage().Window.Maximize();
driver.Navigate().GoToUrl(url);//url is a string variable
ITakesScreenshot screenshotDriver = driver as ITakesScreenshot;
Screenshot screenshot = screenshotDriver.GetScreenshot();
screenshot.SaveAsFile("c:/test.png", ImageFormat.Png);
test.png ChromeDriver является в 1920x1099 и содержит только окно просмотра обозревателя.
Скачайте приложение FirefoxDriver's test.png с разрешением 1903x16559 и см. Всю страницу.
Я знаю, что метод GetScreenshot()
не возвращает одинаковые размеры разрешения, поскольку он имеет несколько разные реализации в IEDriver, FirefoxDriver, OperaDriver, ChromeDriver.
Мои вопросы:
Почему существует такая разница между ChromeDriver и метод FirefoxDriver в
.GetScreenshot()
, даже то они используют одинаковый интерфейс (ITakesScreenshot)?Есть ли способ заставить метод ChromeDriver
GetScreenshot()
вернуть весь экран веб-страницы, а не только окно просмотра?
Обратите внимание, что [ссылка только ответы] (http://meta.stackoverflow.com/tags/link-only-answers/info) не рекомендуется, SO ответы должны быть в конечной точке в поиске решение (по сравнению с еще одной остановкой ссылок, которые со временем становятся устаревшими). Пожалуйста, подумайте о добавлении отдельного резюме здесь, сохранив ссылку в качестве ссылки. – kleopatra