Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Sulu Behat Bundle Laravel Package

elbformat/sulu-behat-bundle

Adds Behat contexts and helpers for easily setting up tests in Sulu applications, built on symfony-behat-bundle. Configure website or admin context per profile, tag features into suites, and use ready-made contexts for pages, snippets, media, dates, and more.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • CMS upgrade planning: v2.0.0 aligns the test contexts with Sulu’s newer content structure, making it relevant to roadmap decisions around Sulu 3 adoption and content-model migration.
  • Build vs. buy for acceptance testing: Teams can avoid maintaining custom Behat contexts for pages, articles, and snippets, especially where webspace and locale coverage matters.
  • Regression coverage prioritization: Better _webspaceKey and locale support helps PMs justify investment in acceptance tests for multi-site, multi-language content workflows.
  • Migration scoping: Dropping Sulu 2 support and removing the old child-page step creates a clear upgrade gate; teams must budget for test-suite rewrites using _parentId or _parentSlug.
  • Risk management: The release explicitly says contexts may not be feature-complete, so PMs should treat v2 as a solid base for pilot coverage rather than a fully mature replacement for all existing scenarios.
  • Test-data flexibility: Underlying support for arguments as tables, YAML, or JSON via elbformat/symfony-behat-bundle:^1.6 can reduce bespoke fixture code and improve maintainability.
  • CI confidence: GitHub Actions matrix builds across PHP versions and with/without the form bundle improve confidence in compatibility, but do not eliminate the need for project-specific validation.

When to Consider This Package

  • Consider it when the product is on Sulu 3 and needs Behat acceptance-test contexts for pages, articles, snippets, webspaces, and locales.
  • Consider it when the team already uses Behat for CMS/content regression testing and wants maintained contexts instead of custom Sulu test helpers.
  • Consider it when the team can absorb the v2 BC breaks, especially the removal of Given there is a(n) (:template) page as child of :parentId and the need to move to _parentId or _parentSlug.
  • Consider it for a pilot or phased migration if page/article/snippet coverage is important but not yet fully feature-complete.
  • Look elsewhere if the product still depends on Sulu 2, since v2.0.0 explicitly drops that support.
  • Look elsewhere if the team needs mature, complete, stable content contexts with no migration overhead, or if existing Behat suites rely heavily on the removed child-page step and cannot be rewritten soon.
  • Look elsewhere if this is expected to be a general Laravel application testing package; the release is specifically oriented around Sulu/Behat content testing rather than Laravel-only feature testing.

How to Pitch It (Stakeholders)

For executives: This is a major-version upgrade of a Sulu/Behat testing package that improves coverage for modern Sulu content structures, webspaces, and locales. It reduces long-term maintenance of custom CMS test tooling and supports safer CMS upgrades, but it requires migration work because Sulu 2 support is dropped and some step definitions changed. The package is best positioned as a maintained foundation for acceptance testing, not yet a fully complete replacement for every existing scenario.

For engineering: v2.0.0 reworks Page, Article, and Snippet contexts for Sulu’s newer content model, adds better webspace and locale support, and moves argument fetching to a more flexible table/YAML/JSON approach via elbformat/symfony-behat-bundle. The main adoption cost is the BC break: remove reliance on the old child-page step and use _parentId or _parentSlug. Validate existing suites in a branch, pilot critical content scenarios, and track gaps because contexts may not be feature-complete.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
gmostafa/php-graphql-client
xeviant/paystack
snowsoft/faker
meditationsteps/blogetc
animalyoung/laravel-influxdb
onix-solutions/sms-telera
lonely-lights/prosetta
oxygen/data
oxygen/core
jengo/base
xiloryx/log-collector
a21ns1g4ts/filament-stripe
la-php/laravel-admin
artisan-build/community-prompts
vleroy/smart
ayles-software/laravel-australian-public-holidays
cboxdk/laravel-id-spatie
cboxdk/laravel-id-billing
cboxdk/laravel-id-billing-bridge
simple-as-fuck/php-performance-log