PHPackages                             atlanticbt/selenium-phpunit-framework - 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. [Testing &amp; Quality](/categories/testing)
4. /
5. atlanticbt/selenium-phpunit-framework

ActiveLibrary[Testing &amp; Quality](/categories/testing)

atlanticbt/selenium-phpunit-framework
=====================================

This is a Selenium + PHPUnit Framework and test skeleton

v2.0.1(10y ago)012PHPPHP &gt;=5.4.0

Since May 4Pushed 10y ago1 watchersCompare

[ Source](https://github.com/abtincbrians/selenium-phpunit-framework)[ Packagist](https://packagist.org/packages/atlanticbt/selenium-phpunit-framework)[ RSS](/packages/atlanticbt-selenium-phpunit-framework/feed)WikiDiscussions feature/migrate-config Synced 1w ago

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

Selenium + PHPUnit Black Box Testing Framework
----------------------------------------------

[](#selenium--phpunit-black-box-testing-framework)

=================================================

This is a proof-of-concept black box testing framework + test scaffolding that seeks to integrate PHPUnit and Selenium.

GETTING STARTED
---------------

[](#getting-started)

### Installation

[](#installation)

#### Composer

[](#composer)

Add the following to your repositories (in composer.json)

```
{
    "type":"composer",
    "url":"http://satis.atlanticbt.com"
}

```

Add the following dependency (require in composer.json)

```
"require": {
    "atlanticbt/selenium-phpunit-framework" : "dev-feature/selenium2-test-case-web-driver"
}

```

NOTE: This value for the release is subject to change, currently dev-feature/selenium2-test-case-web-driver is a beta version geared towards Selenium 2

Download composer.phar in your project

```
curl -sS https://getcomposer.org/installer | php

```

Install dependencies

```
php composer.phar install

```

#### Sample Files

[](#sample-files)

The sample files are (semi) optional, depending on your project and project requirements. These instructions assume you have installed the package into the vendor directory of your project root using Composer. If that's not the case, adjust paths accordingly. If you have your own bootstrap file, you'll need to port code that defines the configuration file path.

Bootstrap

- Copy vendor/atlanticbt/selenium-phpunit-framework/sample/Bootstrap.sample.php into the project root
- Rename the file to Bootstrap.php
- Update configurationFilePath to suit your needs, by default assumes your test configs are in the ./tests/config/ directory

PHPUnit

- Copy vendor/atlanticbt/selenium-phpunit-framework/sample/phpunit.sample.xml into your project root
- Rename file to phpunit.xml
- Update appropriately for your project

Tests

- Copy vendor/atlanticbt/selenium-phpunit-framework/sample/tests directory into your project root
- Copy (and rename) the files in tests/config, remove the .dist extension
- Update tests/config/global.php with global configuration (such as site base url)
- Update /tests/config/test.php with test specific configuration
- Write your tests, you can use tests/SampleTest.php to start, but eventually you'll want to remove that from your project

MOTIVATION
----------

[](#motivation)

The goal is to help PHP developers ease into black box (decidedly NOT unit oriented) testing using Selenium + PHPUnit.

Contributors
------------

[](#contributors)

- Brian Shirey

LICENSE
-------

[](#license)

N/A

DESIGN
------

[](#design)

- These testing framework doesn't do much yet, and what it does will need refactoring.
- Primarily, this abstracts out configuration / setup.
- Configuration is based on precedence, we have ... \*\* Global Configuration (shared amongst all tests) in src/tests/config/global.php \*\*\* PHP indexed array \*\*\* Any file of the format {*.}global.php will be read into global config \*\* Test Configuration (for individual test classes) in src/tests/config/test.php \*\*\* PHP indexed array, each class defines a key (i.e. 'login') \*\*\* Any file of the format {*.}test.php will be read into test-specific config \*\* PHP GLOBALS \*\*\* For instance, as defined by phpunit.xml \*\* Environment Variables \*\*\* For instance, set in test.runner.sh
- Configuration precedence is (highest to lowest) Environment Variables overwrite GLOBALS overwrite Test Configurations overwrite Global Configurations
- This setup allows environment specific values so that we can use the test runner to run the tests on different environments (production versus develop server versus local vagrant)

Additional Notes
----------------

[](#additional-notes)

When you run composer in your project, you will be provided with a sample test runner shell script at /vendor/bin/test.runner.sh The test runner is designed for local testing, such as you want to run the tests on your local machine or within vagrant The PHPUnit sample file can be used to configure the tests in other environments, for instance on Jenkins

Final Thoughts
--------------

[](#final-thoughts)

All typos are intentional

###  Health Score

26

—

LowBetter than 41% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity62

Established project with proven stability

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 ~16 days

Total

4

Last Release

4007d ago

Major Versions

v0.1.2 → v2.0.02015-06-20

PHP version history (2 changes)v0.1.0PHP &gt;=5.3.0

v2.0.0PHP &gt;=5.4.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/2000c81988b47c2eb8c5b1e4d7bcfdb24012d26754f135d5ad43c2cfa91b6828?d=identicon)[bshirey](/maintainers/bshirey)

### Embed Badge

![Health badge](/badges/atlanticbt-selenium-phpunit-framework/health.svg)

```
[![Health](https://phpackages.com/badges/atlanticbt-selenium-phpunit-framework/health.svg)](https://phpackages.com/packages/atlanticbt-selenium-phpunit-framework)
```

###  Alternatives

[orchestra/testbench

Laravel Testing Helper for Packages Development

2.2k41.3M38.3k](/packages/orchestra-testbench)[drupal/core-dev

require-dev dependencies from drupal/drupal; use in addition to drupal/core-recommended to run tests from drupal/core.

2022.0M321](/packages/drupal-core-dev)[webmozarts/strict-phpunit

Enables type-safe comparisons of objects in PHPUnit

30300.1k6](/packages/webmozarts-strict-phpunit)[magium/magium

A browser/functional testing suite using Web Driver. Contains low-ish level functionality to quickly build browser/functional tests.

296.7k11](/packages/magium-magium)

PHPackages © 2026

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