PHPackages                             isidromerayo/simple\_php\_skeleton - 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. isidromerayo/simple\_php\_skeleton

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

isidromerayo/simple\_php\_skeleton
==================================

Simple skeleton PHP project with Symfony2 components

v0.9.9.4(11y ago)121031[1 issues](https://github.com/isidromerayo/simple_php_skeleton/issues)MITPHPPHP &gt;=5.4.3CI failing

Since Jul 18Pushed 3mo ago1 watchersCompare

[ Source](https://github.com/isidromerayo/simple_php_skeleton)[ Packagist](https://packagist.org/packages/isidromerayo/simple_php_skeleton)[ Docs](https://github.com/isidromerayo/simple_php_skeleton/)[ RSS](/packages/isidromerayo-simple-php-skeleton/feed)WikiDiscussions main Synced today

READMEChangelogDependencies (9)Versions (26)Used By (0)

Simple Skeleton PHP project: Composer and other PHP Tools
=========================================================

[](#simple-skeleton-php-project-composer-and-other-php-tools)

A simple skeleton PHP project, using composer and modern PHP tools like PHPUnit

Latest version:

v0.9.9.4 2015-01-27 19:39 UTC *Updated for PHP 8+ compatibility*

requires
--------

[](#requires)

php: ^8.0 pimple/pimple: ^3.0 ext-curl: \*

requires (dev)
--------------

[](#requires-dev)

phpunit/phpunit: ^9.6 mockery/mockery: ^1.5 phake/phake: ^4.0 ext-sqlite3: \* phpunit/phpunit-selenium: ^9.0 facebook/webdriver: dev-community roave/security-advisories: dev-latest

suggests
--------

[](#suggests)

ext-xdebug: Debugger and profiling ext-dom: Required for PHPUnit XML processing ext-mbstring: Required for various string operations ext-xml: Required for PHPUnit XML processing

Install
=======

[](#install)

You need install composer ()

$ curl -s  | php $ php composer.phar install

For development with all testing dependencies:

$ php composer.phar install --dev

If you install composer globally (), you should be use packagist :) ()

$ composer(.phar) create-project isidromerayo/simple\_php\_skeleton my\_project\_name

All-in-one install and check (inspired by  :)

$ curl -s [https://raw.github.com/gist/3612021/272f75c0f8fe76008c6c2f4c124aa35d7182f728/simple\_php\_skeleton.sh](https://raw.github.com/gist/3612021/272f75c0f8fe76008c6c2f4c124aa35d7182f728/simple_php_skeleton.sh) | sh

### Update

[](#update)

$ composer(.phar) update

Using
=====

[](#using)

Create your test under "tests" directory. Create your code under "src" directory.

To run all tests

$ bin/phpunit -c tests

To run tests with code coverage (requires Xdebug)

$ bin/phpunit -c tests/phpunit-codecoverage.xml.dist

PHP Version Requirements
========================

[](#php-version-requirements)

This project now requires PHP 8.0 or higher. The code has been modernized to work with:

- PHP 8.0, 8.1, 8.2, 8.3
- PHPUnit 9.6+
- Modern dependency versions
- Updated test syntax and configurations

Key Changes in PHP 8+ Update
----------------------------

[](#key-changes-in-php-8-update)

- Updated PHPUnit from 3.7.x to 9.6.x with modern syntax
- Upgraded Pimple DI container to v3.x
- Modernized test files to use new PHPUnit interfaces
- Updated CI configuration for PHP 8.x versions
- Replaced deprecated dependencies with modern alternatives

If you want to use ant (and only phpunit task)

$ ant phpunit

Too use code coverage you need install XDebug extension ()

$ bin/phpunit -c tests/phpunit-codecoverage.xml.dist

$ ant -f build-composer.xml

The report for code coverage build/logs/junit.xml

All test
--------

[](#all-test)

Require: WebDriver and add selenium server dependency and Java :) To add dependency into project:

$ composer(.phar) require edysanchez/selenium-server

By default minimal enviroment (unit + integration), to launch "complete" with Selenium the steps:

1. Launch Selenium RC Server

$ bin/selenium-server.jar

2. Launch test with custom configuration phpunit file (another terminal window)

$ bin/phpunit -c tests/phpunit-complete.xml.dist

You should remove "Acme" namespace ;)

Autotest
========

[](#autotest)

Note: Test on Ubuntu 12.04/14.04 (Gnome Shell and XFCE)

Guard PHPUnit2
--------------

[](#guard-phpunit2)

You can try to autotest with Guard PHPUnit2

$ gem install guard-phpunit2

To launch, simple:

$ guard

The configuration file is Guardfile :)

More info

Travis-CI
=========

[](#travis-ci)

Status build: [![Build Status](https://camo.githubusercontent.com/d2fdfe650d0f4ac7f702ff55d4c649da460521e01861b27944f8d6ec0d55babf/68747470733a2f2f7365637572652e7472617669732d63692e6f72672f69736964726f6d657261796f2f73696d706c655f7068705f736b656c65746f6e2e706e673f6272616e63683d6d6f636b657279)](http://travis-ci.org/isidromerayo/simple_php_skeleton)

Scrutinizer
===========

[](#scrutinizer)

Quality: [![Scrutinizer Quality Score](https://camo.githubusercontent.com/dcbfae0af222c614d781cb8c1d9be9e46f4dbf12c93e6c18f0e919e9182778c2/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f69736964726f6d657261796f2f73696d706c655f7068705f736b656c65746f6e2f6261646765732f7175616c6974792d73636f72652e706e673f733d66653437643230663433633264333137393737663330393463333338343561323732376266313737)](https://scrutinizer-ci.com/g/isidromerayo/simple_php_skeleton/)

Code Coverage: [![Code Coverage](https://camo.githubusercontent.com/e0ff17305a16b52704a080909c0657b81dc77fcc47775c64a1f2731356adc403/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f622f69736964726f6d657261796f2f736b656c65746f6e5f7068705f70726f6a6563742f6261646765732f636f7665726167652e706e673f733d37393432386430313830366266643935343931373862353530346136363838633563613862386234)](https://scrutinizer-ci.com/b/isidromerayo/skeleton_php_project/)

Notes
=====

[](#notes)

\[2026-01-26\]

Major PHP 8+ Modernization:

- Update PHP requirement from &gt;=5.4.3 to ^8.0
- Upgrade PHPUnit from 3.7.x to 9.6.x with modern syntax
- Update Pimple DI container from 1.1.1 to ^3.0
- Modernize all test files to use PHPUnit 9+ interfaces
- Replace deprecated getMock() with createMock()
- Update SimpleTestListener with new PHPUnit 9 signatures
- Update all PHPUnit XML configurations for modern syntax
- Upgrade CI configuration to test PHP 8.0-8.3
- Replace sensiolabs/security-checker with roave/security-advisories
- Update Scrutinizer configuration for modern tools
- Add minimum-stability: dev for compatibility with modern packages
- Add required PHP extensions documentation (dom, mbstring, xml, xmlwriter)

\[2015-10-30\]

Revised project:

- Update doc
- Remove hot-phpunit-runner (no works :()

\[2015-01-27\]

Remove selenium server, you should be add in composer.json dependency

```
"edysanchez/selenium-server": "dev-master",

```

To launch selenium server

```
bin/selenium-server.jar

```

\[2013-11-24\]

Test hot-phpunit-runner for autotest using PHP, try to remove guard-phpunit2

hot/phpunit-runner dev-master requires php &gt;=5.4.0, but skeleton\_php\_project requires &gt;=5.3.3

\[2013-11-19\]

Example test doubles: Stubs and Mocks Add Selenium RC Server Listener to calculate time execution ()

\[2013-11-16\]

Add template to Jenkins CI

\[2013-11-11\]

Add basic Scrutinizer ().

\[2013-10-10\]

Add Phake (Test Doubles) to composer.json and autotest with Guard PHPUnit2 (gem).

\[2013-10-09\]

Script post install to remove .git

\[2013-10-08\]

Restructure to divide test into: unit, integration and functional

\[2013-02-20\]

Add "Security Advisories Checker"

\[2013-02-18\]

Remove functional test because we need minimal enviroment to kata(yunos). Selenium RC will be another project (skeleton\_PHP\_testing)

\[2012-12-19\]

Change autoload to PSR-0 in src/ Reorganize phpunit.xml files and ant task

\[2012-12-07\]

Add Selenium RC and test demo

\[2012-12-06\]

Change vendor/bin to bin

Change "require" to "require-dev"

Add "suggest" to install XDebug

Update gist

\[2012-10-07\]

Add a Dependency Injection Container for PHP (Pimple)

References
==========

[](#references)

PHPUnit:

```
http://phpunit.de/manual/current/en/index.html

```

Mockery:

```
https://github.com/padraic/mockery

```

Phake:

```
https://github.com/mlively/Phake
http://phake.digitalsandwich.com/docs/html/

```

Selenium Extension:

```
https://github.com/sebastianbergmann/phpunit-selenium/blob/master/Tests/Selenium2TestCaseTest.php

```

###  Health Score

37

—

LowBetter than 83% of packages

Maintenance52

Moderate activity, may be stable

Popularity17

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

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

Recently: every ~109 days

Total

21

Last Release

4121d ago

PHP version history (3 changes)v0.5PHP &gt;=5.3.2

v0.6PHP &gt;=5.3.3

v0.9.9.3PHP &gt;=5.4.3

### Community

Maintainers

![](https://www.gravatar.com/avatar/883a2534af7baea06614b909397c7c4fdb20feb4f182f0ab5a39f79d6446151b?d=identicon)[isidromerayo](/maintainers/isidromerayo)

---

Top Contributors

[![isidromerayo](https://avatars.githubusercontent.com/u/971708?v=4)](https://github.com/isidromerayo "isidromerayo (141 commits)")

---

Tags

composerphpunittesthelperTDDmockstubxunittest-doubles

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/isidromerayo-simple-php-skeleton/health.svg)

```
[![Health](https://phpackages.com/badges/isidromerayo-simple-php-skeleton/health.svg)](https://phpackages.com/packages/isidromerayo-simple-php-skeleton)
```

###  Alternatives

[mockery/mockery

Mockery is a simple yet flexible PHP mock object framework

10.7k497.0M23.5k](/packages/mockery-mockery)[php-mock/php-mock-phpunit

Mock built-in PHP functions (e.g. time()) with PHPUnit. This package relies on PHP's namespace fallback policy. No further extension is needed.

1718.2M398](/packages/php-mock-php-mock-phpunit)[php-mock/php-mock

PHP-Mock can mock built-in PHP functions (e.g. time()). PHP-Mock relies on PHP's namespace fallback policy. No further extension is needed.

36918.1M98](/packages/php-mock-php-mock)[codedungeon/phpunit-result-printer

PHPUnit Pretty Result Printer

1.2k8.8M397](/packages/codedungeon-phpunit-result-printer)[phake/phake

The Phake mock testing library

4758.0M324](/packages/phake-phake)[kahlan/kahlan

The PHP Test Framework for Freedom, Truth and Justice.

1.2k1.2M245](/packages/kahlan-kahlan)

PHPackages © 2026

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