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

Тестирование REST API
онлайн, начало 29 июля
Школа для начинающих тестировщиков
онлайн, начало 25 июля
Python для начинающих
онлайн, начало 26 июля
Автоматизация функционального тестирования
онлайн, начало 26 июля
Фотография

не обновляется код страницы в pageSource


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

#21 mraklbrw

mraklbrw

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

  • Members
  • Pip
  • 12 сообщений
  • ФИО:Сорокин Денис

Отправлено 01 Май 2018 - 11:31

public static void Monitoring()
        {
            while(IsActiveMonitoring)
            {
                for (int j = 0; j < monitoringQuotes.Count; j++) // Цикл по котировкам, которые должны отслеживаться
                {
                    for (int i = 0; i < browser1.WindowHandles.Count; i++) // Цикл по заголовкам вкладок
                    {
                        browser1.SwitchTo().Window(browser1.WindowHandles[i]);
                        if (browser1.Title.Contains(monitoringQuotes[j]))
                        {
                            
                            string pageCode = browser1.PageSource;
                            //File.AppendAllText(monitoringQuotes[j] + new Random().Next(0, 31345).ToString() + ".txt", pageCode);
                            string s1 = pageCode.Substring(pageCode.IndexOf("bid_"), 22);
                            int k = s1.IndexOf("</");
                            string q = s1.Substring(s1.IndexOf("\">") + 2, k - s1.IndexOf("\">") - 2);

                            if (Convert.ToDouble(q) == 0) // Если торговая сессия уже закрыта, получаем последнее значение котировки
                            {
                                string s2 = pageCode.Substring(pageCode.IndexOf("lst_"), 22);
                                int k2 = s2.IndexOf("</");
                                string q2 = s2.Substring(s2.IndexOf("\">") + 2, k2 - s2.IndexOf("\">") - 2);

                                quotes[monitoringQuotes[j]] = Convert.ToDouble(q2);
                                //break;
                            }

                            quotes[monitoringQuotes[j]] = Convert.ToDouble(q);
                            //break;

                        }
                    }
                }

                Thread.Sleep(3000);

            }
        }

Если смотреть в отладке переменную q2 для конкретной котировки(вкладки-названия страницы в браузере), то всё время одно значение, хотя в это же время смотришь в другом браузере - значение меняется.


  • 0

#22 Spock

Spock

    Гуру

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

Отправлено 01 Май 2018 - 14:43

Видимо объект browser1 не обновляется?
  • 0

#23 mraklbrw

mraklbrw

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

  • Members
  • Pip
  • 12 сообщений
  • ФИО:Сорокин Денис

Отправлено 01 Май 2018 - 20:29

Да. Но если его обновлять - это будет означать обновление страницы. А это долго (7-12 сек).

Там же, вероятно, будет заново перезагружаться вся страница?


  • 0

#24 Spock

Spock

    Гуру

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

Отправлено 02 Май 2018 - 08:26

вроде можно обновить объект и без перезагрузки страницы


  • 0

#25 mraklbrw

mraklbrw

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

  • Members
  • Pip
  • 12 сообщений
  • ФИО:Сорокин Денис

Отправлено 11 Май 2018 - 09:38

Попробовал вот так:

string pageCode = browser1.FindElement(By.TagName(("html"))).GetAttribute("outerHTML");

Однако, результат тот же.


  • 0

#26 Spock

Spock

    Гуру

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

Отправлено 11 Май 2018 - 13:00

конечно результат тот же

ведь страница хранится внутри browser1


  • 0

#27 mraklbrw

mraklbrw

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

  • Members
  • Pip
  • 12 сообщений
  • ФИО:Сорокин Денис

Отправлено 12 Май 2018 - 11:17

Обновление browser1 возможно только через обновление всей страницы.


  • 0

#28 Spock

Spock

    Гуру

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

Отправлено 12 Май 2018 - 12:23

Да вроде можно обновить объект без обновления страницы
  • 0

#29 mraklbrw

mraklbrw

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

  • Members
  • Pip
  • 12 сообщений
  • ФИО:Сорокин Денис

Отправлено 13 Май 2018 - 20:31

Да вроде можно обновить объект без обновления страницы

Не подскажите, как?


  • 0


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



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

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

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