Получить консольный журнал хрома

Я хочу построить тестирование автоматизации, поэтому я должен знать ошибки, которые появляются в консоли хром.

есть возможность получить строки ошибок, которые появляются в консоли?

Чтобы увидеть консоль: щелкните правой кнопкой мыши где-нибудь на странице, нажмите «проверить элемент», а затем перейдите в «консоль».

4 Solutions collect form web for “Получить консольный журнал хрома”

Я не знаю C #, но вот код Java, который выполняет эту работу, надеюсь, вы сможете перевести его на C #

import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.logging.LogEntries; import org.openqa.selenium.logging.LogEntry; import org.openqa.selenium.logging.LogType; import org.openqa.selenium.logging.LoggingPreferences; import org.openqa.selenium.remote.CapabilityType; import org.openqa.selenium.remote.DesiredCapabilities; import org.testng.annotations.AfterMethod; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; public class ChromeConsoleLogging { private WebDriver driver; @BeforeMethod public void setUp() { System.setProperty("webdriver.chrome.driver", "c:\\path\\to\\chromedriver.exe"); DesiredCapabilities caps = DesiredCapabilities.chrome(); LoggingPreferences logPrefs = new LoggingPreferences(); logPrefs.enable(LogType.BROWSER, Level.ALL); caps.setCapability(CapabilityType.LOGGING_PREFS, logPrefs); driver = new ChromeDriver(caps); } @AfterMethod public void tearDown() { driver.quit(); } public void analyzeLog() { LogEntries logEntries = driver.manage().logs().get(LogType.BROWSER); for (LogEntry entry : logEntries) { System.out.println(new Date(entry.getTimestamp()) + " " + entry.getLevel() + " " + entry.getMessage()); //do something useful with the data } } @Test public void testMethod() { driver.get("http://mypage.com"); //do something on page analyzeLog(); } } 

Обратите внимание на метод setUp в приведенном выше коде. Мы используем объект LoggingPreferences для включения ведения журнала. Существует несколько типов журналов, но если вы хотите отслеживать ошибки консоли, то LogType.BROWSER – это тот, который вы должны использовать. Затем мы передаем этот объект DesiredCapabilities и далее в конструктор ChromeWriver и voila – у нас есть экземпляр ChromeDriver с включенным протоколированием.

После выполнения некоторых действий на странице мы вызываем метод analyLog (). Здесь мы просто извлекаем журнал и повторяем его записи. Здесь вы можете ставить утверждения или делать любые другие отчеты, которые вы хотите.

Моим вдохновением был этот код Майкла Клепикова, в котором объясняется, как извлекать журналы производительности из ChromeDriver.

Вы можете получить журналы таким образом:

 Driver().Manage().Logs.GetLog(); 

Указав, какой журнал вы заинтересованы, вы можете получить журнал браузера, то есть:

 Driver().Manage().Logs.GetLog(LogType.Browser); 

Также не забудьте настроить драйвер следующим образом:

 ChromeOptions options = new ChromeOptions(); options.SetLoggingPreference(LogType.Browser, LogLevel.All); driver = new ChromeDriver("path to driver", options); 

В связи с проблемой 6832 регистрация еще не реализована для привязок C #. Таким образом, может быть нелегкий способ получить эту работу на данный момент.

Это код c # для регистрации журнала brower с хром.

 private void CheckLogs() { List<LogEntry> logs = Driver.Manage().Logs.GetLog(LogType.Browser).ToList(); foreach (LogEntry log in logs) { Log(log.Message); } } 

вот мой код для фактического журнала:

  public void Log(string value, params object[] values) { // allow indenting if (!String.IsNullOrEmpty(value) && value.Length > 0 && value.Substring(0, 1) != "*") { value = " " + value; } // write the log Console.WriteLine(String.Format(value, values)); } 
  • Невозможно прочитать текст из тега div в python
  • Проверьте, доступен ли элемент в селене
  • Selenium python find_element_by_class_name () перестает работать с версии 2.2 до 2.21 - не может использовать 'Compound Class Name'
  • Как выбрать элемент с Selenium Python xpath
  • Как отправить текст в невидимое поле ввода
  • Скопировать данные с помощью Python, когда с веб-сайта с несколькими страницами, но URL-адрес не изменяется?
  • Selenium «Невозможно найти соответствующий набор возможностей», несмотря на то, что драйвер находится в / usr / local / bin
  • Как обрабатывать элементы внутри Shadow-root
  • Python Selenium WebDriver. Написание собственного ожидаемого условия
  • Python - запуск firefox с Selenium в приватном режиме
  • Scrapy и Selenium представляют форму, которая динамически отображается
  • Python - лучший язык программирования в мире.