Перейти к содержимому

Техники локализации плавающих дефектов
онлайн, начало 17 августа
Школа для начинающих тестировщиков
онлайн, начало 20 августа
Программирование на Python для тестировщиков
онлайн, начало 14 августа
Тестирование без требований
онлайн, начало 17 августа
Фотография

Selenium

Остановка загрузки страницы

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 15

#1 xore4ek3

xore4ek3

    Новый участник

  • Members
  • Pip
  • 9 сообщений

Отправлено 04 декабря 2019 - 19:34

Вечер добрый пишу тест на C#  Selenium, столкнулся с проблемой как остановить загрузку страницы... Т.е. если я нажимаю крестик вручную, то скрип быстро отрабатывает. А если не трогать крестик то очень долгое ожидание загрузки страницы. Если кто подскажет как решить проблему буду признателен.! Иcкал много решение на JS, только я не очень в нем понимаю....


  • 0

#2 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 767 сообщений


Отправлено 04 декабря 2019 - 20:33

Никак, вы что-то можете сделать на странице, только после её загрузки.

Если вы имеете ввиду что у вас open долго отрабатывает, то можно использовать другую стратегию загрузки страницы

        ChromeOptions opt = new ChromeOptions();
        opt.setPageLoadStrategy(PageLoadStrategy.NORMAL);

Они есть EAGER NONE NORMAL.

По умолчанию, вроде как работает нормал.


  • 0

#3 xore4ek3

xore4ek3

    Новый участник

  • Members
  • Pip
  • 9 сообщений

Отправлено 05 декабря 2019 - 07:28

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


  • 0

#4 Spock

Spock

    Гуру

  • Members
  • PipPipPipPipPipPip
  • 1 772 сообщений
  • ФИО:Роман

Отправлено 05 декабря 2019 - 08:45

не надо ничего останавливать

 

waitForElementPresent и потом делайте что надо


  • 0

#5 xore4ek3

xore4ek3

    Новый участник

  • Members
  • Pip
  • 9 сообщений

Отправлено 05 декабря 2019 - 09:50

не надо ничего останавливать

 

waitForElementPresent и потом делайте что надо

Заменить ElementVisibli на waitForElementPresent  ?? Просто я читал, что get url пока не отработает, а он отработает как полностью загрузится страница, у меня код не пойдет дальше работать


  • 0

#6 Spock

Spock

    Гуру

  • Members
  • PipPipPipPipPipPip
  • 1 772 сообщений
  • ФИО:Роман

Отправлено 05 декабря 2019 - 10:07

попробуйте другие подходы чем Селениум

 

по описанию всё равно у Вас скорее всего парсер сайтов а не тест


  • 0

#7 xore4ek3

xore4ek3

    Новый участник

  • Members
  • Pip
  • 9 сообщений

Отправлено 05 декабря 2019 - 10:39

попробуйте другие подходы чем Селениум

 

по описанию всё равно у Вас скорее всего парсер сайтов а не тест

ну не парсер.. а подскажите, что получше Selenium? и где я могу останавливать загрузку сайта, когда мне вздумается?


  • 0

#8 Spock

Spock

    Гуру

  • Members
  • PipPipPipPipPipPip
  • 1 772 сообщений
  • ФИО:Роман

Отправлено 05 декабря 2019 - 10:47

 

 

ну не парсер..

и не тест, и не парсер а неведома зверюшка

 

 

 

а подскажите, что получше Selenium? и где я могу останавливать загрузку сайта, когда мне вздумается?

пробуйте Cypress, Puppeteer, TestCafe


  • 0

#9 xore4ek3

xore4ek3

    Новый участник

  • Members
  • Pip
  • 9 сообщений

Отправлено 06 декабря 2019 - 09:49

Никак, вы что-то можете сделать на странице, только после её загрузки.

Если вы имеете ввиду что у вас open долго отрабатывает, то можно использовать другую стратегию загрузки страницы

        ChromeOptions opt = new ChromeOptions();
        opt.setPageLoadStrategy(PageLoadStrategy.NORMAL);

Они есть EAGER NONE NORMAL.

По умолчанию, вроде как работает нормал.

А в хроме точно будет работать?


  • 0

#10 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 767 сообщений


Отправлено 06 декабря 2019 - 11:46

А не много ли вопросов?


  • 0

#11 xore4ek3

xore4ek3

    Новый участник

  • Members
  • Pip
  • 9 сообщений

Отправлено 06 декабря 2019 - 16:23

А не много ли вопросов?

Ну извините, просто я начинающий, думаю в свое время вы тоже задавали вопросы..


  • 0

#12 xore4ek3

xore4ek3

    Новый участник

  • Members
  • Pip
  • 9 сообщений

Отправлено 06 декабря 2019 - 17:41

 

А не много ли вопросов?

Ну извините, просто я начинающий, думаю в свое время вы тоже задавали вопросы..

 

 cannot convert from 'OpenQA.Selenium.Remote.DesiredCapabilities' to 'OpenQA.Selenium.Chrome.ChromeOptions'
 вот такую получаю ошибку, может кто скажет как исправить?

  • 0

#13 Snap

Snap

    Специалист

  • Members
  • PipPipPipPipPip
  • 849 сообщений
  • ФИО:Роман
  • Город:Москва


Отправлено 06 декабря 2019 - 18:41

 

 

А не много ли вопросов?

Ну извините, просто я начинающий, думаю в свое время вы тоже задавали вопросы..

 

 cannot convert from 'OpenQA.Selenium.Remote.DesiredCapabilities' to 'OpenQA.Selenium.Chrome.ChromeOptions'
 вот такую получаю ошибку, может кто скажет как исправить?

 

По видимому вы 2 разных типа присваиваете


  • 0

http://starbugss.blogspot.ru - "Звездные баги", мой блог.


#14 xore4ek3

xore4ek3

    Новый участник

  • Members
  • Pip
  • 9 сообщений

Отправлено 08 декабря 2019 - 19:38

Никак, вы что-то можете сделать на странице, только после её загрузки.

Если вы имеете ввиду что у вас open долго отрабатывает, то можно использовать другую стратегию загрузки страницы

        ChromeOptions opt = new ChromeOptions();
        opt.setPageLoadStrategy(PageLoadStrategy.NORMAL);

Они есть EAGER NONE NORMAL.

По умолчанию, вроде как работает нормал.

Severity Code Description Project File Line Suppression State
Error CS1955 Non-invocable member 'DriverOptions.PageLoadStrategy' cannot be used like a method.
Тут что не так? написал как у вас в примере

  • 0

#15 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 767 сообщений


Отправлено 09 декабря 2019 - 07:31

У меня пример для Java.


  • 0

#16 prog_belka

prog_belka

    Новый участник

  • Members
  • Pip
  • 1 сообщений

Отправлено 27 апреля 2020 - 12:00

Попробуйте 

driver.Manage().Timeouts().PageLoad = TimeSpan.FromSeconds(10); //время на загрузку страницы
try
{
driver.Navigate().GoToUrl(url); //если страница не загружена в течении 10 секунд, то будет выброшена ошибка
}
catch
{
//обработать ошибку
}

По ссылке можете найти больше полезных инструментов Selenium


  • 0


Selenium 2.0: стартовый уровень
онлайн
Программирование на Java для тестировщиков
онлайн
Автоматизация функционального тестирования
онлайн
Selenium WebDriver: полное руководство
онлайн



Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Яндекс.Метрика
Реклама на портале