Для выполнения теста в реальных браузерах необходимо установить и запустить Selenium Server.
Без Selenium Server вы можете использовать только PhantomJS. Перед началом использования Gemini запустите PhantomJS в режиме веб-драйвера:
phantomjs --webdriver=4444
При наличии нескольких тестовых наборов необходимо сделать снимок эталонного изображения:
gemini gather [пути к файлам с тестами]
Если не указан ни один путь, будет прочитан каждый .js
-файл из директории gemini
.
По умолчанию, конфигурация загружается из файла .gemini.yml
текущей директории, а снимки будут сохранены в папку gemini/screens
.
Чтобы указать другой файл конфигурации, используйте аргументы --config
или -c
.
Рекомендуется сохранять собранные эталоны вместе с кодом в системе контроля версий.
Для сравнения вашего эталонного изображения с текущим состоянием блока используйте следующую команду:
gemini test [пути к файлам с тестами]
Пути и конфигурация обрабатываются таким же образом, как в команде gather
.
Каждое состояние, отличающееся от эталонного изображения, будет считаться неуспешно пройденным тестом.
По умолчанию, в консоли отображаются только имена состояний. Для получения более подробной информации вы можете использовать HTML-отчёт:
gemini test --reporter html [пути к файлам с тестами]
В результате применения команды создается HTML-файл в директории gemini-report
, в котором отображены эталонное и текущее изображения, а также разница между ними для каждого состояния в каждом браузере.
Доступные отчёты:
flat
(стандартный отчёт);html
(отчёт в HTML c изображениями).
Вы можете сгенерировать несколько отчётов одновременно используя несколько аргументов —-reporter
:
gemini test --reporter flat --reporter html [пути к файлам с тестами]
Передайте аргумент --coverage
(или настройте опцию coverage
в конфигурационном файле) для получения отчёта о том, какие из CSS правил были затронуты минимум одним тестом полностью (выделены зелёным цветом в отчёте), частично (жёлтым) или не затронуты вообще (красным).
--config
,-c
– выбрать используемый конфигурационный файл;--root-url
,-r
– использовать другой URL вместо указанного в полеrootUrl
конфигурационного файла;--grid-url
,-g
– использовать другой URL вместо указанного в полеgridUrl
конфигурационного файла;--grep PATTERN
– исполнять только те наборы, название которых соответствуют регулярному выражению;--help
– отобразить справку;--version
– отобразить текущую версию.
Чтобы настроить автодополнение команд по нажатию клавиши Tab, добавьте строку . <(gemini completion)
в файл конфигурации командной строки (к примеру, файл ~/.bashrc
для bash
или файл ~/.zshrc
для zsh
).