Критич. ошибка в логе: "Таймаут во время выполнения MouseMove"



  • @Ranout Если ошибка в блоке бездействия, можно попробовать его написать самому. Тут же на форуме где то была функция.



  • @Ranout said in Критич. ошибка в логе: "Таймаут во время выполнения MouseMove":

    Получилось исправить? Ошибка тоже надоела. Потоки стопаются из-за нее.

    поставь больше таймаут и к-во ошибок при выполнении проекта пока задача не решиться - это позволит тебе продолжать использовать проект без остановок.


  • administrators

    @kain

    Присоединяюсь к теме. Процесс вроде жив был.

    Ок, кидайте проект


  • administrators

    @Sevenup

    Оборачиваем загрузку в игнорирование ошибок.

    Можете просто не ждать полной загрузки


  • administrators

    @Sevenup

    P.S.
    по сути получается так, если на странице начинается какое-то движение инициированное JS либами, БАС ловит его понимая что страница загружается и при таймауте, таймаут достается тому блоку, который сейчас выполняется. Возможно я ошибаюсь или не достаточно точно описал, но по наблюдениям как-то так картина получается.

    Нет, таймауты не могут путаться, максимум что может быть - таймаут загрузки может спутаться с другой загрузкой, но не с движением мыши.

    Ту дело в другом, а именно в то время как стает пустой во время перезагрузки функция скрола не возращает значение, из-за этого таймаут. Сейчас правлю.


  • administrators

    @Sevenup said in Критич. ошибка в логе: "Таймаут во время выполнения MouseMove":

    Почему такие траблы с загрузкой я пока не смог понять, как вариант один из элементов или JS библиотек залип в подгрузке или какая-то JS либа решила что-то заинклудить на страницу. В обычном браузере страница открывается без проблем, а в БАСе уходит в таймаут. Интересно бы узнать как БАС чекает загружена ли страница.

    Скорее всего метрика + Украина.



  • @support said in Критич. ошибка в логе: "Таймаут во время выполнения MouseMove":

    @Sevenup said in Критич. ошибка в логе: "Таймаут во время выполнения MouseMove":

    Почему такие траблы с загрузкой я пока не смог понять, как вариант один из элементов или JS библиотек залип в подгрузке или какая-то JS либа решила что-то заинклудить на страницу. В обычном браузере страница открывается без проблем, а в БАСе уходит в таймаут. Интересно бы узнать как БАС чекает загружена ли страница.

    Скорее всего метрика + Украина.

    через прокси ж работа :)
    конкретно в случае с страницей "[http://]ria .ru/ science" http://c2n.me/3LSVbfd.png на скрине видно, что не метрика.

    если кому интересно, можно воспроизвести описанным выше способом, дублирую:

    • блок "браузер"->"загрузить" (грузим для примера страницу [http://]ria .ru/ science)
    • блок браузера оборачиваем в игнорирование ошибок или выключаем ожидание загрузки, если выключаем ожидание, после ставим спать несколько секунд давая время загрузится странице
    • блок "двигать мышь к элементу и кликнуть" на любую ссылку страницы
    • происходит переход на страницу, по которой кликнули

    вот тут вопрос, как в случае клика работает "ожидание загрузки"? наследует режим предыдущего блока "загрузить" т.е. в нашем случае выключено?

    • пока страница по которой мы кликнули пыжиться и не может догрузиться, у нас уже включается блок "эмуляция бездействия" и на нем мы получаем таймаут MouseMove параллельно наблюдая как страница так и не может загрузиться

    при такой последовательности ошибка у меня воспроизводится в 80% случаев, потому и пришел к описанному выше выводу.

    P.S.
    я не много букв пишу? :) Вы если что меня останавливайте :)))


  • administrators

    @Sevenup Исправил.
    https://bablosoft.com/distr/BrowserAutomationStudioDevelopment/20.0.4/BrowserAutomationStudioInstallAllInOne.exe

    Ошибка была в том, что между рендером новой страницы и началом загрузки document в js был нулевой, и функция прокрутки не возвращала значение.

    если кому интересно, можно воспроизвести описанным выше способом, дублирую:

    Это уже работает.

    вот тут вопрос, как в случае клика работает "ожидание загрузки"? наследует режим предыдущего блока "загрузить" т.е. в нашем случае выключено?

    Действие "Загрузка" считается выполненным, когда от браузера придет событие OnLoadEnd. Тоесть все как у обычного браузера.
    "Ждать Полной Загрузки" сложнее.
    Упрощенно, это действие ждет либо OnLoadEnd либо окончания запросов которые были сделаны за последний промежуток времени.
    Я придумал алгоритм сам, старался чтобы он работал и для обычных страниц, и там где все через ajax и сайтов, которые совершают запросы постоянно, вроде сервиса для стриминга или видеохостингов.

    Вот тут можно посмотреть код
    https://github.com/bablosoft/BAS/blob/6ac6369a844e4466fe085b7d643ebfd928c77511/Engine/scripts/engine/worker/waiters.js#L395-L462

    я не много букв пишу? :) Вы если что меня останавливайте :)))

    Для меня идеально шаги для повторения ошибки(как сделали вы) или проект.



  • @support said in Критич. ошибка в логе: "Таймаут во время выполнения MouseMove":

    @Sevenup Исправил.
    https://bablosoft.com/distr/BrowserAutomationStudioDevelopment/20.0.4/BrowserAutomationStudioInstallAllInOne.exe

    Ошибка была в том, что между рендером новой страницы и началом загрузки document в js был нулевой, и функция прокрутки не возвращала значение.

    если кому интересно, можно воспроизвести описанным выше способом, дублирую:

    Это уже работает.

    вот тут вопрос, как в случае клика работает "ожидание загрузки"? наследует режим предыдущего блока "загрузить" т.е. в нашем случае выключено?

    Действие "Загрузка" считается выполненным, когда от браузера придет событие OnLoadEnd. Тоесть все как у обычного браузера.
    "Ждать Полной Загрузки" сложнее.
    Упрощенно, это действие ждет либо OnLoadEnd либо окончания запросов которые были сделаны за последний промежуток времени.
    Я придумал алгоритм сам, старался чтобы он работал и для обычных страниц, и там где все через ajax и сайтов, которые совершают запросы постоянно, вроде сервиса для стриминга или видеохостингов.

    Вот тут можно посмотреть код
    https://github.com/bablosoft/BAS/blob/6ac6369a844e4466fe085b7d643ebfd928c77511/Engine/scripts/engine/worker/waiters.js#L395-L462

    супер! спасибо за фикс, код алгоритма изучу...

    по ссылке выше загружается версия 20.0.2 вместо 20.0.4, при запуске обновление до 20.0.4 не просит. На сайте для скачивания также 20.0.2. Возможно при загрузке Вы по ошибке вместо 20.0.4 загрузили 20.0.2.


  • administrators

    @Sevenup Так и должно быть. У вас работает фикс?



  • @support said in Критич. ошибка в логе: "Таймаут во время выполнения MouseMove":

    @Sevenup Так и должно быть. У вас работает фикс?
    угу, понял, пробую.... а то ввело в заблуждение отсутствие 20.0.4 :)

    "эмуляция бездействия" после перехода на другую страницу кликнув по элементу теперь вроде работает, по крайней мере воспроизвести описанную выше ошибку более не удается. Спасибо!

    Теперь правда вот пока грузится страница в браузере заглушка дефолтовая с текстом "у браузера нет данных для отрисовки" и сложно понять что там вообще происходит :) Приходится включать консоль (доступно только в режиме записи). К стати было бы здорово, если можно было бы добавить обычную строку состояния, как в браузерах внизу, где виден процесс загрузки.



  • @support я смог заменить печать текста на вставку и больше такого не повторялось. Видимо действительно падал после длительного ввода.


  • administrators

    @kain Там еще был баг с нулевым document, я его исправил.



  • @support спасибо)
    Больше подобных ошибок не было.



  • Столкнулся с данной ошибкой при работе на сервере, на домашнем компе все работает.
    В логе пишет Таймаут во время выполнения MouseMove
    В переменной "LAST_ERROR": "Таймаут во время выполнения random point[documentRoot, xpath_all //a[contains(text(), "Log In")], at 1]",

    Тестовый шаблон прилагаю 0_1510931819760_test_click.xml

    Еще на сервере БАС становится почему то серым 0_1510932184408_green_bas.png

    Хотя на сервере стоит та же win7 что и на домашнем компьютере.

    Повторюсь на домашнем компе клик отрабатывает и тема оформления БАС черная. Все траблы исключительно на сервере.



  • Кстати, интересно отчего зависит цвет оформления окна БАСа?



  • @Antonio на вскидку не помню, но в каком то файле конфигурации можно изменить параметр и БАС будет светлый, было тут на форуме, правда найти не могу сейчас :(


  • administrators

    @Gang said in Критич. ошибка в логе: "Таймаут во время выполнения MouseMove":

    В переменной "LAST_ERROR": "Таймаут во время выполнения random point[documentRoot, xpath_all //a[contains(text(), "Log In")], at 1]",

    А какое содержание страницы на сервере, у меня работает.

    Еще на сервере БАС становится почему то серым

    По рдп стили отключается специально.



  • @support said in Критич. ошибка в логе: "Таймаут во время выполнения MouseMove":

    По рдп стили отключается специально.

    У меня бывает по рдп, что скомпилированный скрипт серый, а основной БАС черный.


  • administrators

    @Antonio Стили выставляются в зависимости от переменной окружения ClientName. echo %ClientName%
    Если значение не пустое, значит рдп. У вас есть сервер, на котором это не так?


Log in to reply
 

Looks like your connection to Bablosoft was lost, please wait while we try to reconnect.