PHPackages                             moodlehq/behat-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. moodlehq/behat-extension

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

moodlehq/behat-extension
========================

Moodle behat extension

v3.400.5(5y ago)91.2M↑137.5%221GPL-3.0-or-laterPHPPHP &gt;=7.3.0

Since Dec 5Pushed 4y ago15 watchersCompare

[ Source](https://github.com/moodlehq/moodle-behat-extension)[ Packagist](https://packagist.org/packages/moodlehq/behat-extension)[ RSS](/packages/moodlehq-behat-extension/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (6)Versions (143)Used By (1)

moodle-behat-extension
======================

[](#moodle-behat-extension)

Behat extension for Moodle to get features and steps definitions from different moodle components; it basically allows multiple features folders and helps with the contexts spreads across components of an external app.

Following custom formats are supported.
=======================================

[](#following-custom-formats-are-supported)

- **moodle\_progress**: Prints Moodle branch information and dots for each step.
- **moodle\_list**: List all scenarios.
- **moodle\_stepcount**: List all features with total steps in each feature file. Used for parallel run.
- **moodle\_screenshot**: Take screenshot and core dump of each step. With following options you can dump either or both.
    - **--format-settings '{"formats": "image"}'**: will dump image only
    - **--format-settings '{"formats": "html"}'**: will dump html only.
    - **--format-settings '{"formats": "html,image"}'**: will dump both.
    - **--format-settings '{"formats": "html", "dir\_permissions": "0777"}'**

Contributing
============

[](#contributing)

[http://docs.moodle.org/dev/Acceptance\_testing/Contributing\_to\_Moodle\_behat\_extension](http://docs.moodle.org/dev/Acceptance_testing/Contributing_to_Moodle_behat_extension)

Upgrade from moodle-behat-extension 1.31.x to 3.31.0
====================================================

[](#upgrade-from-moodle-behat-extension-131x-to-3310)

- Chained steps are not natively supported by behat 3.
    - You should either replace Behat\\Behat\\Context\\Step\\Given with Behat\\Behat\\Context\\Step\\Given;
    - or use behat\_context\_helper::get('BEHAT\_CONTEXT\_CLASS'); and call api to execute the step.
- named selectors are deprecated, use named\_exact or named\_partial instead.
- Failed steps are cached for rerun and doesn't require an empty file to save failed scenarios.

###  Health Score

46

—

FairBetter than 93% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity46

Moderate usage in the ecosystem

Community28

Small or concentrated contributor base

Maturity76

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

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

Total

124

Last Release

1825d ago

Major Versions

v1.29.8 → v3.31.02016-03-04

PHP version history (6 changes)v1.0.2PHP &gt;=5.3.2

v1.29.1PHP &gt;=5.4.4

v3.35.3PHP &gt;=7.0.0

v3.37.2PHP &gt;=7.1.0

v3.39.1PHP &gt;=7.2.0

v3.311.2PHP &gt;=7.3.0

### Community

Maintainers

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

![](https://www.gravatar.com/avatar/8aa132a6b5f982e20f7d7b00cd7255671b228e77ccbf29a24b66eb42353b9d96?d=identicon)[stronk7](/maintainers/stronk7)

---

Top Contributors

[![stronk7](https://avatars.githubusercontent.com/u/167147?v=4)](https://github.com/stronk7 "stronk7 (18 commits)")[![andrewnicols](https://avatars.githubusercontent.com/u/370047?v=4)](https://github.com/andrewnicols "andrewnicols (8 commits)")[![dmonllao](https://avatars.githubusercontent.com/u/540109?v=4)](https://github.com/dmonllao "dmonllao (5 commits)")[![Chocolate-lightning](https://avatars.githubusercontent.com/u/13307778?v=4)](https://github.com/Chocolate-lightning "Chocolate-lightning (2 commits)")[![polothy](https://avatars.githubusercontent.com/u/634657?v=4)](https://github.com/polothy "polothy (1 commits)")[![sarjona](https://avatars.githubusercontent.com/u/900389?v=4)](https://github.com/sarjona "sarjona (1 commits)")[![vmdef](https://avatars.githubusercontent.com/u/38071202?v=4)](https://github.com/vmdef "vmdef (1 commits)")[![junpataleta](https://avatars.githubusercontent.com/u/13312075?v=4)](https://github.com/junpataleta "junpataleta (1 commits)")[![marinaglancy](https://avatars.githubusercontent.com/u/836986?v=4)](https://github.com/marinaglancy "marinaglancy (1 commits)")[![mouneyrac](https://avatars.githubusercontent.com/u/354908?v=4)](https://github.com/mouneyrac "mouneyrac (1 commits)")

---

Tags

BDDmoodleBehat

### Embed Badge

![Health badge](/badges/moodlehq-behat-extension/health.svg)

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

###  Alternatives

[sensiolabs/behat-page-object-extension

Page object extension for Behat

1166.5M27](/packages/sensiolabs-behat-page-object-extension)[soyuka/contexts

Behatch contexts

282.1M11](/packages/soyuka-contexts)[shvetsgroup/parallelrunner

Parallel runner extension for Behat

74143.5k](/packages/shvetsgroup-parallelrunner)[dmarynicz/behat-parallel-extension

Parallel extension for Behat

27544.3k](/packages/dmarynicz-behat-parallel-extension)[polishsymfonycommunity/symfony2-mocker-extension

Behat extension for mocking services defined in the Symfony2 dependency injection container.

26253.1k4](/packages/polishsymfonycommunity-symfony2-mocker-extension)[soulcodex/laravel-behat

Laravel Extension for easy integration with Behat

1760.8k](/packages/soulcodex-laravel-behat)

PHPackages © 2026

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