Comments 13
Люблю подобный нейминг :)
+12
Нужно добавить опцию bgm, при включении которой на фоне тестов будет играть это — pleer.com/tracks/8023316PMEO
0
Вот так уедешь в отпуск, а они напишут Войну и мир.
+3
А что с переходами между страницами? У меня есть сайт, который косит под веб-приложение, но возможны выходы (и переходы внутри) по href. Библиотека под такое заточена? Лог ошибок единый или сбросится при покидании страницы (имеется в виду имплементация по умолчанию)?
0
У себя решил эту проблему переопределением метода, который отвечает за переходы по страницам, и теперь в тестовом энвайроменте редирект в принципе не возможен. По умолчанию библиотека под это не заточена, и лог сбрасывается перед каждым запуском тестов (в вашем случае при переходам по страницам).
Как решение могу предложить переопределить объект логера, и сохранять лог например в localStorage, тогда при завершении тестов, сможете лог достать оттуда.
Второй вариант — запускать тесты в фантоме с помощью grunt-gremlins, где есть доступ к файловой системе. Сейчас логирования в файл еще нет, но появится в ближайшее время, так же в планах удобный менеджмент логирования для разных подзадач.
Как решение могу предложить переопределить объект логера, и сохранять лог например в localStorage, тогда при завершении тестов, сможете лог достать оттуда.
Второй вариант — запускать тесты в фантоме с помощью grunt-gremlins, где есть доступ к файловой системе. Сейчас логирования в файл еще нет, но появится в ближайшее время, так же в планах удобный менеджмент логирования для разных подзадач.
+2
Пищу )
0
Поясните пожалуйста, каким образом генерируется дефолтное событие клика на элементе? Или библиотека парсит мой код, вытаскивает все функции и целенаправленно вызывает callback`и?
0
Библиотка не знает ничего о вашем коде, событие клика генерируется слчайным образом, с помощью объекта, полученного вызовом
Вы можете сконфигурировать этого гремлина, указав в какую именно область экрана гремлин должен кликать (метод positionSelector), с какими именно элементами он может работать (canClick) и какие типы эвентов он должен генерировать (см. по умолчанию)
document.createEvent("MouseEvents")
. Это значит, что эффект будет примерно тот же, что и от случайного клика (или dblclick, mousedown и т.д.) реальной мышью пользователя в какой либо участок экрана.Вы можете сконфигурировать этого гремлина, указав в какую именно область экрана гремлин должен кликать (метод positionSelector), с какими именно элементами он может работать (canClick) и какие типы эвентов он должен генерировать (см. по умолчанию)
+1
На самом деле document.createEvent(«MouseEvents») не всегда сможет эмулировать действия пользователя. Например, клик внутри ифрейма не прокатит (если у вас, конечно, нет доступа к его document). Или вам такие образом не обмануть мобильный браузер, чтобы автоматом запустить, к примеру, HTML5 video. Думаю, что есть еще достаточное количество ситуаций, когда document.createEvent(«MouseEvents») будет бессилен эмулировать действия человека.
Но, тем не менее, мне эта свора нравится.
Но, тем не менее, мне эта свора нравится.
0
Sign up to leave a comment.
Gremlins.js — monkey testing библиотека для веб приложений