PHPackages                             ikr/php-webdriver-journal - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. ikr/php-webdriver-journal

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

ikr/php-webdriver-journal
=========================

A journaling proxy object over the Facebook's WebDriver

v0.1.4(10y ago)097MITPHPPHP &gt;=5.4.0

Since Jul 9Pushed 10y ago1 watchersCompare

[ Source](https://github.com/ikr/php-webdriver-journal)[ Packagist](https://packagist.org/packages/ikr/php-webdriver-journal)[ RSS](/packages/ikr-php-webdriver-journal/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (3)Versions (6)Used By (0)

[![Build Status](https://camo.githubusercontent.com/c7e8ff3d16be3ef0c8071f571be20e459818bf0e03e228dd025b320517b8cdef/68747470733a2f2f7472617669732d63692e6f72672f696b722f7068702d7765626472697665722d6a6f75726e616c2e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/ikr/php-webdriver-journal)

Summary
=======

[](#summary)

A journaling proxy to the Facebook's [WebDriver](https://github.com/facebook/php-webdriver). Wraps a `WebDriver` instance, and complements the original method calls with taking screen-shots, and capturing the browser log messages. As the result, a *journal* of the executed browser session is created: an HTML document with embedded screen-shots, DOM query records, console messages, etc.

Why?
====

[](#why)

We have an automatic headless screen-scraping tool implemented with [Selenium](http://docs.seleniumhq.org/) + [PhantomJS](http://phantomjs.org/) (no idea why PhantomJS by itself wasn't enough). Sometimes it screws up: ticket order fails, wrong kind of tickets gets selected, or a child name gets confused with an adult name. This tool is summoned to ease the debugging of such failures.

Installation
============

[](#installation)

```
$ composer require ikr/php-webdriver-journal

```

API
===

[](#api)

```
$driver = \RemoteWebDriver::create(
    $seleniumHubUrl,
    \DesiredCapabilities::phantomjs()
);

$wrappedDriver = new \WebDriverJournal\WebDriverProxy(
    $driver,

    new \WebDriverJournal\Probe(
        $driver,

        new \WebDriverJournal\Journal(
            new \WebDriverJournal\DirectoryFilesWriter(
                '/tmp/web-driver-journals',
                $browserSessionIdOfYourChoice
            )
        )
    )
);

$wrappedDriver->manage()->window()->setSize(new \WebDriverDimension(1024, 1024));
$wrappedDriver->manage()->timeouts()->implicitlyWait(8);

$wrappedDriver->get('https://ikr.su/');
$wrappedDriver->findElement(\WebDriverBy::id('btn-next'))->click();
// ...
$wrappedDriver->quit();
```

Maturity
========

[](#maturity)

Still experimental: v0.1.x

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

5

Last Release

3966d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/daaf17d2afc7680b0cf3f5e839ac4d0f55fdf1a21d1ad81224f08eb4180d8e8b?d=identicon)[ikr](/maintainers/ikr)

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/ikr-php-webdriver-journal/health.svg)

```
[![Health](https://phpackages.com/badges/ikr-php-webdriver-journal/health.svg)](https://phpackages.com/packages/ikr-php-webdriver-journal)
```

###  Alternatives

[javiereguiluz/easyslugger

A fast and easy to use slugger with full UTF-8 support.

791.0M5](/packages/javiereguiluz-easyslugger)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
