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

Тестирование REST API
онлайн, начало 17 июня
Chrome DevTools: Инструменты тестировщика
онлайн, начало 20 июня
SQL для тестировщиков
онлайн, начало 24 июня
Git: инструменты тестировщика
онлайн, начало 20 июня
Фотография

RemoteWebDriver. Удаляется сессия

selenium grid

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

#1 PunkLiner

PunkLiner

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

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


Отправлено 21 Октябрь 2014 - 17:32

Добрый вечер. Объясните, почему, имея вот такой файл testng.xml:

<suite name = "selenium-tests" parallel = "tests" thread-count = "1">
<listeners>
    <listener class-name="utils.Listener"/>
    <listener class-name="utils.Screenshoter"/>
</listeners>
<test name = "test1">
    <parameter name="nodeIP" value="192.168.123.111"/>
    <classes>
        <class name="Class1"/>
    </classes>
</test>

<test name = "test2">
    <parameter name="nodeIP" value="192.168.123.111"/>
    <classes>
        <class name="Class2"/>
    </classes>
</test>

после выполнения всех тестов из Class1 происходит 5-ти минутная задержка, WebDriver не делает абсолютно ничего, потом в консоль падает, что сессия была успешно удалена, и начинает создаваться новая сессия для Class2. Как этого избежать? Почему они не могут в одной сессии выполняться? Спасибо


  • 0

#2 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 821 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 22 Октябрь 2014 - 06:03

Не зная, как и где инициализируется и останавливается сессия, ответить на этот вопрос невозможно.


  • 0

Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium


#3 PunkLiner

PunkLiner

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

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


Отправлено 22 Октябрь 2014 - 12:02

Существует класс BaseClass. Выглядит след. образом:

public class BaseClass {

    public static User ADMIN = new User().setLogin("admin").setPassword("admin");
    protected ApplicationManager app;

    @BeforeClass
    public void initApp() throws IOException {
        app = new ApplicationManagerImpl();
    }

    @AfterClass
    public void stop() {
        app.close();
    }
}

Логично, что после выполнения команды mvn test, выполняется метод, аннотированный как @BeforeClass, т.е инициализируем driver, helpers и пр..Пошел выполняться Class1. Класс выполнился, и тут затык ровно на 5 минут. Затем создается новая сессия для выполнения Class2. 

f57deb91996c.png


  • 0

#4 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 821 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 24 Октябрь 2014 - 14:18

Всё равно непонятно. Надо искать, где эти пять минут теряются.

Во-первых, надо понять, на какой стороне -- в тестах или на selenium server. Во-вторых, где именно.

 

Чтобы это выявить, можно:

1) запустить в отладчике, и во время этого пятиминутного зависания приостановить выполнение, и посмотреть, какие есть потоки и чем они заняты.

2) запустить в консоли, и во время зависания нажать Ctrl-Break и опять таки посмотреть, какие есть потоки и чем они заняты.


  • 0

Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium



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




Темы с аналогичным тегами selenium grid

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

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

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