shqn
@shqn

PhantomJS 2.0+Selenium работает слишком медленно?

Привет!

В поисках альтернативы для ChromeDriver стал смотреть в сторону PhantomJS+GhostDriver. Проект, в котором я работаю, сильно вырос, число тестов увеличилось до 4000 и встал вопрос об ускорении и повышении стабильности. Прогнав всю пачку на PhantomJS 1.9.8, увидел много упавших тестов, с многими из которых тем не менее справился PhantomJS 2.0.0, но скорость его работы неприятно удивила. После замеров оказалось, что он уступает предыдущей версии по скорости примерно в 1,5-2 раза. Нашел вот такую статейку https://plus.google.com/+Ivan%C4%8Cent%C3%A9%C5%A1..., но ее рецепт для меня не подошел — тесты по-прежнему гоняются слишком медленно.

Кто-нибудь сталкивался с таким?
  • Вопрос задан
  • 1192 просмотра
Решения вопроса 1
shqn
@shqn Автор вопроса
Может кому пригодится: причина оказалась в больших размерах javascript объектов, которые были на странице. Лечить это можно вынесением каких-то его частей в отдельные объекты. Что-то вроде того:

// Problem
var complexObject = {
    id: 123,
    name: "Object 123",
    foo: {...}, // Много данных
    bar: {...} // Много данных
};

// Solution
var fooObject = {
    // ...
};
var barObject = {
    // ...
};

var complexObject = {
    id: 123,
    name: "Object 123",
    foo: fooObject
    bar: barObject
};
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы