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

Автоматизатор мобильных приложений
онлайн, начало 11 августа
Тестирование безопасности
онлайн, начало 11 августа
Тестирование мобильных приложений
онлайн, начало 11 августа
Автоматизация тестирования REST API на Python
онлайн, начало 11 августа
Фотография

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 854 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 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 854 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


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

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

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

 

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

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

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


  • 0

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



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




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

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

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

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