Лучший способ сделать снимки экрана тестов в Селене 2?

Мне нужен способ сделать снимки экрана моих функциональных испытаний. Прямо сейчас я использую Селен 2 с привязкой C#. Я в значительной степени хочу сделать снимок экрана в конце теста, чтобы удостовериться, что желаемая страница отображена. Есть ли какие-либо конкретные инструменты Вы, парни знают, которых я могу соединиться в свой код C#, который инициирует снимок экрана? Я не мог найти встроенный Селен 2 решениями (не просматривая его).

47
задан Phillip 7 April 2016 в 13:47
поделиться

2 ответа

Чтобы делать скриншоты в Selenium 2, вам нужно сделать следующее

driver = new FireFoxDriver(); // Should work in other Browser Drivers
driver.Navigate().GoToUrl("http://www.theautomatedtester.co.uk");
Screenshot ss = ((ITakesScreenshot) driver).GetScreenshot();

//Use it as you want now
string screenshot = ss.AsBase64EncodedString;
byte[] screenshotAsByteArray = ss.AsByteArray;
ss.SaveAsFile("filename", ImageFormat.Png); //use any of the built in image formating
ss.ToString();//same as string screenshot = ss.AsBase64EncodedString;

Этот код должен работать, поскольку я быстро протестировал его в IronPython Repl. См. Код IronPython ниже

import clr
clr.AddReference("WebDriver.Common.dll")
clr.AddReference("WebDriver.Firefox.dll")
from OpenQA.Selenium import *
from OpenQA.Selenium.Firefox import *
driver = FirefoxDriver()
driver.Navigate().GoToUrl("http://www.theautomatedtester.co.uk")
s = driver.GetScreenshot()
s.AsBaseEncodedString
# HUGE string appears in the REPL
70
ответ дан 7 November 2019 в 13:02
поделиться

При использовании селена было два знакомых мне вызова: captureEntirePageScreenshot и captureScreenshot . Возможно, вы захотите изучить эти призывы, чтобы узнать, выполнят ли они то, что вам нужно.

-1
ответ дан 7 November 2019 в 13:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: