PHPackages                             dennisdigital/domain-extension - 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. dennisdigital/domain-extension

ActiveBehat-extension[Testing &amp; Quality](/categories/testing)

dennisdigital/domain-extension
==============================

Domain extension for Behat

1.1.0(8y ago)1298[1 PRs](https://github.com/dennisinteractive/behat_domain_extension/pulls)MITPHP

Since Dec 23Pushed 3y ago50 watchersCompare

[ Source](https://github.com/dennisinteractive/behat_domain_extension)[ Packagist](https://packagist.org/packages/dennisdigital/domain-extension)[ Docs](https://github.com/dennisinteractive/drupal_domain_extension)[ RSS](/packages/dennisdigital-domain-extension/feed)WikiDiscussions master Synced 4w ago

READMEChangelog (3)Dependencies (5)Versions (3)Used By (0)

Behat Domain Extension
======================

[](#behat-domain-extension)

The Domain Extension is an integration layer for behat that allows control across multiple domains. It provides common step definitions for testing domain based features.

Why?
----

[](#why)

When testing sites which have multiple domains configured or when testing across multiple domains we need a way to tell Mink which domain we want to run our scenarios against.

How?
----

[](#how)

By default Mink supports a single base url that it will prepend all relative urls to. The domain extension allows us to switch this base url in our Scenarios depending on the domain we're testing by using one of the following step definitions:

```
Given I am on the domain "Example"

```

```
And I am on the domain "Example"

```

```
When I go to the domain "Example"

```

From this point on, all the steps we run in the given Scenario will be tested against this new domain.

It also allows the use of aliases for domains, as can be seen above, so that we don't need to refer to domains directly. These can be configured in the Domain Extension config as follows:

```
default:
  extensions:
    Behat\DomainExtension:
      domain_map:
        "Example": 'http://example.com'

```

### Dependencies:

[](#dependencies)

- Behat
- Symfony DPI
- Mink

### Notes

[](#notes)

Mink override approach taken from - [Behat/MinkExtension#155](https://github.com/Behat/MinkExtension/issues/155)

###  Health Score

31

—

LowBetter than 66% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity13

Limited adoption so far

Community17

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 78.9% 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 ~221 days

Total

3

Last Release

3035d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/7585951?v=4)[dennisdigital](/maintainers/dennisdigital)[@dennisdigital](https://github.com/dennisdigital)

---

Top Contributors

[![kalpaitch](https://avatars.githubusercontent.com/u/334114?v=4)](https://github.com/kalpaitch "kalpaitch (15 commits)")[![davidgrayston](https://avatars.githubusercontent.com/u/1229335?v=4)](https://github.com/davidgrayston "davidgrayston (2 commits)")[![kungfuchris](https://avatars.githubusercontent.com/u/843206?v=4)](https://github.com/kungfuchris "kungfuchris (1 commits)")[![tashaharrison](https://avatars.githubusercontent.com/u/4018999?v=4)](https://github.com/tashaharrison "tashaharrison (1 commits)")

---

Tags

behattestwebdomain

### Embed Badge

![Health badge](/badges/dennisdigital-domain-extension/health.svg)

```
[![Health](https://phpackages.com/badges/dennisdigital-domain-extension/health.svg)](https://phpackages.com/packages/dennisdigital-domain-extension)
```

###  Alternatives

[drupal/drupal-extension

Drupal extension for Behat

21115.5M166](/packages/drupal-drupal-extension)[drupal/drupal-driver

A collection of reusable Drupal drivers

6816.2M23](/packages/drupal-drupal-driver)[friends-of-behat/mink-extension

Mink extension for Behat

14035.9M553](/packages/friends-of-behat-mink-extension)[drevops/behat-steps

Collection of steps for Behat

27409.9k4](/packages/drevops-behat-steps)[robertfausk/behat-panther-extension

Symfony Panther extension for Behat

341.9M104](/packages/robertfausk-behat-panther-extension)[devinci/devinci-behat-extension

Provides extra behat goodies.

17596.9k](/packages/devinci-devinci-behat-extension)

PHPackages © 2026

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