Учебники

PhantomJS — Обзор

Говорят , что PhantomJS — это браузер без головы, потому что он не задействует браузер при выполнении кода JavaScript. Выполнение будет отображаться не на дисплее браузера, а в командной строке. Такие функции, как CSS Handling, DOM Manipulation, JSON, Ajax, Canvas, SVG и т. Д., Будут обрабатываться в командной строке. PhantomJS не имеет графического интерфейса и, следовательно, все его выполнение происходит в командной строке.

Используя PhantomJS, мы можем записать в файл, прочитать содержимое файла или загрузить файл, сделать снимок экрана, преобразовать веб-страницу в pdf и многое другое. В безголовых браузерах вы получаете все поведение браузера, то есть куки-файлы, методы Http-запроса, например GET / POST, удаление куки-файлов, удаление куки-файлов и т. Д., Перезагрузка страницы, переход на другую страницу .

PhantomJS использует WebKit, который имеет аналогичную среду просмотра, как известные браузеры — Google Chrome, Mozilla Firefox, Safari и т. Д. Он также предоставляет множество JavaScript API, который помогает делать снимки экрана, загружать файл, записывать в файл, читать файл , взаимодействие с веб-страницами и т. д.

PhantomJS не поддерживает Flash или Video, так как для этого требуются плагины, и их трудно поддерживать в командной строке.

Особенности PhantomJS

Давайте теперь поймем функции, которые предлагает PhantomJS.

Автоматизация страницы

PhantomJS позволяет читать содержимое страницы с помощью его API. Это может помочь манипулировать DOM, использовать внешние библиотеки для выполнения требуемой задачи.

Скриншот

PhantomJS помогает сделать снимок экрана указанной страницы и сохранить его как изображение в различных форматах, таких как PNG, JPEG, PDF и GIF. С помощью снимка экрана, это может легко помочь убедиться, что веб-контент в порядке.

PhantomJS предлагает свойства и методы, с помощью которых он позволяет разработчикам настраивать размер снимков экрана и указывать область, которую они хотят захватить.

Тестирование без головы

PhantomJS помогает тестировать пользовательский интерфейс в командной строке. Хотя с помощью скриншота он может легко помочь найти ошибки в пользовательском интерфейсе. Иногда PhantomJS не может помочь с тестированием в одиночку. Однако его можно обернуть вместе с другими библиотеками тестирования, такими как Mocha, Yoeman и т. Д. Вы можете воспользоваться помощью PhantomJS, чтобы загрузить файл и отправить форму.

PhantomJS можно использовать для проверки входов на сайты и проверки безопасности. PhantomJS может использоваться вместе с другими инструментами, такими как CasperJS, Mocha, Qunit, чтобы сделать тестирование более мощным.

Мониторинг сети

Одной из важных функций PhantomJS является его использование для мониторинга сетевого подключения с использованием доступного API. PhantomJS разрешает проверку сетевого трафика; он подходит для проведения различного анализа поведения и производительности сети.

PhantomJS может использоваться для сбора данных о производительности веб-страницы в реальной среде. PhantomJS можно использовать с такими инструментами, как Yslow, для сбора показателей производительности любых веб-сайтов.