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

Фотография

Тестирование перехода по окнам


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

#1 filipok

filipok

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

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

Отправлено 09 ноября 2010 - 07:36

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

Реализация:
browser.click("link=" + linkName);
      
      String windowsTitles[] = browser.getAllWindowTitles();
      for(String window : windowsTitles)
      {
        System.out.println("WINDOW TITLE: " + window);
      }
      String windowsNames[] = browser.getAllWindowNames();
      for(String window : windowsNames)
      {
        System.out.println("WINDOW NAME: " + window);
      }
      String windowsIds[] = browser.getAllWindowIds();
      for(String window : windowsIds)
      {
        System.out.println("WINDOW ID: " + window);
      }

      // if new window opened
      if (windowsTitles.length > 1) {
        browser.selectWindow("_blank");
      }

      waitForPageToLoad();
      boolean res = verifyHeadersDisplay(pageHeader);

      // if new window was opened
      if (windowsTitles.length > 1) {
        browser.close();
        browser.selectWindow(windowsTitles[0]);
      }

      assert res;
где browser - экземпляр объекта Selenium.

Всё работает и все списки отображаются если мы запускаем тесты на локальной машине (приложение установлено на этой же машине).
Но стоит нам разделить приложение и тесты (сервер с приложением на одной машине а тестирование запускаем на другой) как переход по окнам перестаёт работать и тестирование валиться с ошибкой.
Более того списки с ID Name и Title выводятся только для родительского окна, такое чувство что других окон просто нет.

В чём может таиться проблема?
  • 0

#2 filipok

filipok

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

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

Отправлено 09 ноября 2010 - 10:06

Всем спасибо кто пытался как то помочь, разобрался сам. На другой машине (на той что тесты запускали) просто у эксплорера был включён PopupBlocker.

8)))
  • 0

#3 mcreature

mcreature

    Активный участник

  • Members
  • PipPip
  • 88 сообщений

Отправлено 09 ноября 2010 - 10:38

Я бы посоветовал вам заменить waitForPageToLoad на waitForPopUp

Прочитал ваш ответ в следующей теме. У вас в waitForPageToLoad используется waitForPopUp, как я понимаю?
  • 0

#4 filipok

filipok

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

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

Отправлено 18 ноября 2010 - 12:47

Я бы посоветовал вам заменить waitForPageToLoad на waitForPopUp

Прочитал ваш ответ в следующей теме. У вас в waitForPageToLoad используется waitForPopUp, как я понимаю?


нет, именно waitForPageToLoad(). Дело в том что я не знаю будет открываться новое окно или всётаки в текущем откроется ссылка, это как мне кажеться более универсально. К тому же всё работает и достаточно хорошо 8)
  • 0

#5 mcreature

mcreature

    Активный участник

  • Members
  • PipPip
  • 88 сообщений

Отправлено 19 ноября 2010 - 09:25


Я бы посоветовал вам заменить waitForPageToLoad на waitForPopUp

Прочитал ваш ответ в следующей теме. У вас в waitForPageToLoad используется waitForPopUp, как я понимаю?


нет, именно waitForPageToLoad(). Дело в том что я не знаю будет открываться новое окно или всётаки в текущем откроется ссылка, это как мне кажеться более универсально. К тому же всё работает и достаточно хорошо 8)

К сожалению, не универсально.
Если у вас откроется страница в том же окне, то да, тест пройдет нормально. А вот если в попапе, то задержки не будет в принципе, т.к. основное окно не обновлялось.
А вот почему у вас работает - я не знаю =)
  • 0


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

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