Skip to main content

Wat is Testbench Workbench?

Orchestra Testbench is bedoeld voor tests, maar in combinatie met Workbench kun je binnen je package-repository een kleine Laravel-app bouwen en lokaal draaien. Je gebruikt het als aanvulling op de tests uit package-testing, wanneer je UI-controles, routebereikbaarheid en verificatie met seeders wilt uitvoeren.

Setup

1

Installeer Testbench

2

Maak de Workbench aan

Dit commando doet het volgende in één keer:
  • De directorystructuur van workbench/ aanmaken
  • De Workbench-namespace toevoegen aan autoload-dev in composer.json
  • Buildcommando’s toevoegen aan de scripts van composer.json
Extra opties:
  • --force : bestaande bestanden overschrijven
  • --basic : een eenvoudige opzet zonder routes en package-discovery-configuratie
  • --devtool : DevTool-ondersteuning inschakelen
3

Bouwen en starten

workbench:install richt de map workbench/, autoload-dev en de bijbehorende scripts in één keer in.
Na de installatie zijn de volgende scripts toegevoegd aan composer.json.

De ontwikkelomgeving definiëren met testbench.yaml

Het gedrag van Workbench beheer je met een testbench.yaml in de root.
Omdat testbench.yaml per omgeving verschillende instellingen kan bevatten, wordt aanbevolen het toe te voegen aan .gitignore en buiten de commits te houden. Neem in plaats daarvan een testbench.yaml.example als template op in de repository.
De belangrijkste configuratieopties: Ook environment variables kun je in testbench.yaml beheren.

De directorystructuur van workbench

workbench
app
Models
bootstrap
config
database
factories
migrations
public
storage

De belangrijkste functies van Workbench

WorkbenchServiceProvider

Maak een Workbench-specifieke service provider voor de demoregistraties.

Routes en controllers

In workbench/routes/web.php en workbench/routes/api.php kun je verificatieroutes plaatsen.

Migrations en seeders

Met workbench/database/migrations en workbench/database/seeders verifieer je met een datastructuur die dicht bij productie ligt.
Met een seeder genereer je testdata.

De service starten en CLI-controles

Via vendor/bin/testbench kun je Artisan-commando’s uitvoeren.

Testen met de WithWorkbench-trait

Met de WithWorkbench-trait wordt de configuratie uit testbench.yaml ook op je geautomatiseerde tests toegepast.

Samenwerking met je tests

Het werkt het prettigst als je de rollen verdeelt: Workbench als “app voor handmatige controle en demo’s” en de Testbench-testcode als “geautomatiseerde verificatie”.
  • Automatisering: regressies voorkomen in tests/
  • Handmatige controle: schermen, flows en integratiegedrag controleren in workbench/

Probleemoplossing

Controleer de syntaxis van testbench.yaml en de providerconfiguratie. Een YAML-indentatiefout is een veelvoorkomende oorzaak.
Controleer het pad van het routebestand en de registratie in de WorkbenchServiceProvider. Kijk of discovers.web in testbench.yaml op true staat.
Controleer of het pad naar de migrations klopt. Gebruik je SQLite, kijk dan of de buildstap create-sqlite-db is opgenomen.

Gerelateerde pagina’s

Laravel-packages testen met Orchestra Testbench

Bekijk eerst hoe je een testinfrastructuur voor packages opzet.

Versiecompatibiliteit van packages beheren

Bekijk de compatibiliteitstabel van Laravel en Testbench en het beheer van de CI-matrix.
Laatst gewijzigd op 6 september 2026