PHPackages                             thomasweinert/phpunit-extension-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. thomasweinert/phpunit-extension-skeleton

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

thomasweinert/phpunit-extension-skeleton
========================================

Skeleton for PHPUnit extensions

1.0.0(7y ago)36BSD-3-ClausePHPPHP ^7.1

Since Sep 9Pushed 7y ago1 watchersCompare

[ Source](https://github.com/ThomasWeinert/phpunit-extension-skeleton)[ Packagist](https://packagist.org/packages/thomasweinert/phpunit-extension-skeleton)[ RSS](/packages/thomasweinert-phpunit-extension-skeleton/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (1)Versions (2)Used By (0)

PHPUnit Extension Skeleton
==========================

[](#phpunit-extension-skeleton)

A skeleton for an extension for [PHPUnit](https://phpunit.de/). It provides the necessary files and build scripts. Here is a ["Hello World" example](https://github.com/ThomasWeinert/phpunit-extension-skeleton-example) based on this skeleton that implements a simple constraint and assertion for PHPUnit. .

Requirements
------------

[](#requirements)

- [Composer](https://getcomposer.org/)
- [Phive](https://phar.io/)

Usage
-----

[](#usage)

Use [Composer](https://getcomposer.org/) to create a new extension project from this skeleton.

```
$ composer create-project thomasweinert/phpunit-extension-skeleton your-awesome-extension

```

Go into the new project directory.

```
$ cd your-awesome-extension

```

Install tools used to build and package your extension using Phive.

```
$ phive install

```

Start adding new

Build Targets
-------------

[](#build-targets)

The repository includes a [Phing](https://www.phing.info/) build file. Phive installs Phing and the other tools into the `tools/` subdirectory.

### build

[](#build)

```
$ tools/phing build

```

Create a Phar package for the extension. The phar will be put into the `build/` directory. The name and information for a Phive `manifest.xml` will be read from the `composer.json`. The latest tag from current Git branch will be used as version number.

### clean

[](#clean)

```
$ tools/phing clean

```

Delete build artifacts.

### package

[](#package)

```
$ tools/phing package

```

Create a Phar package for the extension and sign it using GPG. the first time you will be asked GPG user. The user will be stored in the `build.properties` file.

### reformat

[](#reformat)

```
$ tools/phing reformat

```

Uses the [PHP Coding Standards Fixer](https://cs.sensiolabs.org/) to reformat the source code according the PHPUnit coding standard.

### test

[](#test)

```
$ tools/phing test

```

Run unit tests.

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity57

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

Unknown

Total

1

Last Release

2801d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/236825?v=4)[Thomas Weinert](/maintainers/ThomasWeinert)[@ThomasWeinert](https://github.com/ThomasWeinert)

---

Top Contributors

[![ThomasWeinert](https://avatars.githubusercontent.com/u/236825?v=4)](https://github.com/ThomasWeinert "ThomasWeinert (14 commits)")

### Embed Badge

![Health badge](/badges/thomasweinert-phpunit-extension-skeleton/health.svg)

```
[![Health](https://phpackages.com/badges/thomasweinert-phpunit-extension-skeleton/health.svg)](https://phpackages.com/packages/thomasweinert-phpunit-extension-skeleton)
```

###  Alternatives

[orchestra/testbench

Laravel Testing Helper for Packages Development

2.2k39.1M32.1k](/packages/orchestra-testbench)[timacdonald/log-fake

A drop in fake logger for testing with the Laravel framework.

4235.9M56](/packages/timacdonald-log-fake)[jasonmccreary/laravel-test-assertions

A set of helpful assertions when testing Laravel applications.

3513.9M32](/packages/jasonmccreary-laravel-test-assertions)[ergebnis/phpunit-slow-test-detector

Provides facilities for detecting slow tests in phpunit/phpunit.

1468.1M72](/packages/ergebnis-phpunit-slow-test-detector)[typo3/testing-framework

The TYPO3 testing framework provides base classes for unit, functional and acceptance testing.

675.0M774](/packages/typo3-testing-framework)[robiningelbrecht/phpunit-pretty-print

Prettify PHPUnit output

76460.0k15](/packages/robiningelbrecht-phpunit-pretty-print)

PHPackages © 2026

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