Comments 18
Selenium великолепен. Единственный напрягающий момент — скорость работы.
Запустил тесты — пошел курить или пить чай. Это слегка отпугивает от частого запуска тестов.
Хотя, дело может быть в том, что я тестировал его на нетбуке с AMD E-450, 2x1.6GHz. Хочу позже попробовать его на чём-нибудь мощнее.
Запустил тесты — пошел курить или пить чай. Это слегка отпугивает от частого запуска тестов.
Хотя, дело может быть в том, что я тестировал его на нетбуке с AMD E-450, 2x1.6GHz. Хочу позже попробовать его на чём-нибудь мощнее.
0
Причин может быть много, в любом случае Selenium не может работать быстрее чем отвечает сервер, у нас в проекте сервер как раз и является узким местом когда натравливливаешь на него Selenium-тесты хотя бы в 8-10 потоков. Приходится оптимизировать сами тесты, переиспользовать сущности в БД и т.п.
+1
UFO just landed and posted this here
Когда оплата зависит от того, сколько ты успел сделать — отмазки отпадают сами собой. И уже сам считаешь кропотливо каждую потраченную минуту.
0
UFO just landed and posted this here
Вы знаете, и пра… Стоп.
На самом деле, я даже «плюсанул» ваш комментарий. Он этого стоил хотя бы за XKCD. =)
Раньше, когда какое-то время работал на фиксированной ставке, я тоже на эту тему шутил. И про тесты тоже. Но сейчас для меня эти шутки не особо актуальны, как и для многих других программистов, я уверен.
Ещё из той же оперы: а что ты успеваешь сделать, покатечёт твой любимый кетчуп запускается твоя любимая IDE?
На самом деле, я даже «плюсанул» ваш комментарий. Он этого стоил хотя бы за XKCD. =)
Раньше, когда какое-то время работал на фиксированной ставке, я тоже на эту тему шутил. И про тесты тоже. Но сейчас для меня эти шутки не особо актуальны, как и для многих других программистов, я уверен.
Ещё из той же оперы: а что ты успеваешь сделать, пока
-1
Selenium великолепен. Единственный напрягающий момент — скорость работы.
Запустил тесты — пошел курить или пить чай. Это слегка отпугивает от частого запуска тестов.
Учитывая, что Selnium-тесты эмулируют работу пользователя – то в сравнении с этим скорость работы WebDriver – значительно выше.
И да, скорее всего тут все упирается в железо и скорость передачи по сети
Но, еще очень важны и другие оптимизации, например:
1. Не закрывать браузер после каждого теста
2. Иногда применять JavaScript для получения той информации, которая посредством WebDriver получить долго
Пример:
Известно, что WebDriver работает по протоколу REST и HTTP, который сам по себе не самый быстрый (зато понятный и универсальный).
Если мы попробуем найти все элементы на страницы, то REST вернет лишь ссылки на эти элементы, а не всю информацию целиком.
Потом, если мы захотим вывести, например имя тэга и значение Displayed – то будет сделано по два HTTP запроса к серверу на каждый элемент.
И это хорошо, если сервер развернут локально, а иначе – тормоза будут ощущаться очень сильно
0
1. Не закрывать браузер после каждого теста
Да, я так и делал. И сервер с приложением развёрнут был локально.
0
Хочу заметить, что вызовы JavaScript передаются через тот же REST интерфейс, так что прирост скорости местами будет сомнительный.
P.S. Уточнение, за исключением когда приходится долго обходить дерево и атрибуты :)
P.S. Уточнение, за исключением когда приходится долго обходить дерево и атрибуты :)
+1
Зависит от ситуации, конечно.
Если два вызова Вебдрайвера заменить на один JavaScript – то выигрыш будет действительно сомнительным.
А вот если сотню на один – то вполне можно.
Тут есть другое дело, что при такой оптимизации, решение на JavaScript может вызывать меньшее доверие и некоторые вызовы могут вести себя по иному, чем это делает реальный пользователь.
В таких обстоятельствах нужно просто учитывать конкретную ситуацию и конкретный код
Еще пример.
На странице Линкедина есть блок добавления группы пользователей. У каждого пользователя есть своя кнопка «Добавить». Как показывает практика, один вызов на JQuery с «одновременным» нажатием всех кнопок работает на порядок быстрее и не портит конечный результат.
Если два вызова Вебдрайвера заменить на один JavaScript – то выигрыш будет действительно сомнительным.
А вот если сотню на один – то вполне можно.
Тут есть другое дело, что при такой оптимизации, решение на JavaScript может вызывать меньшее доверие и некоторые вызовы могут вести себя по иному, чем это делает реальный пользователь.
В таких обстоятельствах нужно просто учитывать конкретную ситуацию и конкретный код
Еще пример.
На странице Линкедина есть блок добавления группы пользователей. У каждого пользователя есть своя кнопка «Добавить». Как показывает практика, один вызов на JQuery с «одновременным» нажатием всех кнопок работает на порядок быстрее и не портит конечный результат.
+1
UFO just landed and posted this here
А улучшения в работе с регулярными выражениями планируются?
+1
Sign up to leave a comment.
Путь к Selenium 3.0