Всем привет!
Давненько я не писал сюда, т.к. был занят релокацией и переквалификацией. Кстати кто интересуется переездом в солнечную Эстонию, можно подробно почитать в моем блоге.
А сегодня я хочу рассказать о своем новом проекте, который называется GlaceJS
.
Это фреймворк для функционального тестирования на JavaScript
. Ссылки на код и документацию. Обладает следующими возможностями и особенностями:
- Кросс-платформенный
- Использует
mochajs
как тест-раннер. - Имеет свою систему тестов и репортеров.
- Ориентирован на сложные функциональные сценарии.
- Поддерживает множественные независимые верикации внутри одного теста.
- Поддерживает параметризацию внутри и снаружи теста.
- Имеет встроенный опциональный механизм перезапуска упавших тестов и верификаций. Ключи запуска
--retry <number>
и-retry-chunk <number>
соответственно. - Поддерживает из коробки систему множественных репортов с возможностью подключения своих.
- Имеет встроенный репортер в консоль и TestRail. Поддержка Allure в ближайших планах. Ключ подключения
--testrail
. - Запускает внутри себя селениум-сервер, если не указаны настройки для подключения к внешнему. Ключ подключения веб-тестов
--web
. - Поддерживает Page Object Pattern.
- Умеет сравнивать два изображения и говорить похожи или нет.
- Умеет искать картинку в картинке и говорить есть или нет.
- Может писать видео выполнения тестов. Пока не поддерживается на macOS, но скоро появится. Ключи запуска
--video
(удаляется, если тест пройдет) и--force-video
(видео сохраняется в любом случае). - Умеет запускать Xvfb сервер, а также писать с него видео. Ключ запуска
--xvfb
или--xvfb 1280x720
. - Включает 2 типа прокси: обычный http и transparent (chrome browser only). Ключи подключения
--proxy
и--global-proxy
. Могут работать вместе или отдельно. - Поддерживает middleware для обоих прокси, можно подключать свои middleware.
- Включает middleware для кеширования ответов с сервера. Ключ
--cache
или--existing-cache
(использует уже сохраненные данные, если не были удалены). Пока только агрессивное кэширование, без соответствия http-протоколу, но скоро будет. - Включает middleware для управления скоростью ответов прокси.
- Включает middleware для сбора информации об ответах сервера.
- Поддерживает хранение CLI опций в JSON-конфиге.
- Поддерживает расширение дефолного конфига собственным.
- Включает примеры на все основные возможности c указанием команд запуска.
Чтобы установить проект:
- Поставить
java
,chrome browser
. Для unix-системimagemagick
,ffmpeg
илиavconv
. Для windows-системimagemagick
иffmpeg
устанавливаются при установкеglacejs
. - Поставить
nodejs>=7.6
иnpm>=4.0
, компилятор нативных модулей для nodejs. - Установить через npm:
npm i glacejs
- Или установить из исходников и попробовать рабочие примеры:
git clone https://github.com/schipiga/glacejs.git
cd glacejs
npm i
Сейчас проект на стадии активного расширения документации, возможностей и устранения мелких недочетов. Поэтому любой usage experience, contribution & issues приветствуются.
Cчитаете ли вы проект полезным?
- да
- нет
0 участников