halleck45/behat-wizard-bundle
A Symfony bundle that adds an interactive wizard for creating Behat feature files and Gherkin scenarios. It helps teams bootstrap behavior-driven development tests quickly by generating ready-to-edit .feature files without hand-writing boilerplate.
--ignore-platform-reqs or an explicit version constraint):
composer require --dev halleck45/behat-wizard-bundle
app/AppKernel.php (Symfony 2/3) inside the dev environment block only:
if (in_array($this->getEnvironment(), ['dev', 'test'])) {
$bundles[] = new Halleck45\BehatWizardBundle\BehatWizardBundle();
}
app/config/routing_dev.yml:
behat_wizard:
resource: "@BehatWizardBundle/Resources/config/routing.yml"
prefix: /_behat
behat_wizard: in config_dev.yml. Look at Resources/config/ and the bundle's README for the exact keys — they are not extensively documented.php app/console assets:install web --symlink./_behat in your browser, browse the list of .feature files under features/, open one, edit a scenario, and save. The wizard writes directly to disk — check git diff immediately after your first save to confirm the path and formatting are what you expect.Where to look first: vendor/halleck45/behat-wizard-bundle/Resources/config/routing.yml for the real route names, and the bundle's DependencyInjection/Configuration.php for the supported config keys.
dev, and front the routes with an access_control rule or an IP allowlist. This is a web UI that edits files on your filesystem; it has no place in staging or production.features/*.feature → review in git diff → commit. Never let the UI become the only place a feature exists.vendor/bin/behat (plus --dry-run) as the gate in CI. The wizard does not replace behat.yml, context classes, or step definitions.features_path at your existing features/ folder so the wizard and Behat agree on layout. If you have multiple suites, run a separate instance/config per suite rather than trying to make one wizard cover everything.composer.json and commit composer.lock so a fresh composer install on another machine does not silently resolve to a broken combination.app/Resources/BehatWizardBundle/views/ for small UI tweaks; reserve a fork for anything touching the file-writing or execution services.composer.json constraints before planning adoption; if they don't fit, budget a fork or pick a different tool.features/. If saves silently fail or produce permission errors, check ownership of the directory and any SELinux/AppArmor restrictions.features_path is resolved relative to the project root in most configs; use an absolute path if you see "not found" errors from the console but files exist. Watch out for symlinked features/ directories.behat, make sure the configured PHP/Behat binary is the one your CLI uses (same PHP version, same vendor/), and expect long-running suites to hit PHP max_execution_time. Prefer running suites from the CLI and using the UI just for authoring.assets:install. Stale assets are a common cause of a "blank" UI.behat.yml is valid and context classes autoload correctly.var/logs/dev.log; most failures are config keys, permissions, or a missing route import rather than bugs in the bundle itself.How can I help you explore Laravel packages today?