Wat is Orchestra Testbench?
Orchestra Testbench is een Laravel-testhelper voor packageontwikkeling. Als je vanOrchestra\Testbench\TestCase erft, kun je een package op zichzelf testen alsof je binnen een Laravel-applicatie zit.
Ook in de gids over packageontwikkeling wordt aangeraden om Testbench te gebruiken voor packagetests.
Setup
1
Installeer Testbench
2
Maak een basis-TestCase
3
Voeg indien nodig configuratie of aliassen toe
Met
getPackageAliases() registreer je, net als bij aliases in config/app.php, de facade-aliassen die je tijdens de tests gebruikt.Basistests schrijven
Controleer als eerste of de service provider geladen is, of de facade werkt zoals verwacht en of de configuratie is doorgevoerd.Bestandssysteem- en databasetests
Voor tests die een database gebruiken, configureer je indefineEnvironment() een in-memory SQLite en laad je de migrations die je wilt testen.
Testen op meerdere Laravel-versies
De majorversie van Testbench correspondeert met de majorversie van Laravel. Zie de officiële Version Compatibility voor details.
Als je meerdere versies continu wilt verifiëren, combineer je dit met een GitHub Actions-matrix. Zie Versiecompatibiliteit van packages beheren voor de ontwerpgedachte.
Samenvatting
Met Testbench kun je het gedrag van je package verifiëren op een manier die dicht bij productie ligt, zonder handmatig een Laravel-app op te zetten. Door service-providerregistratie, configuratie, facades en de database allemaal in je tests op te nemen, verminder je problemen na een release aanzienlijk.Gerelateerde pagina’s
Laravel-packages ontwikkelen
Bekijk de basis van een package-implementatie rond service providers.
Versiecompatibiliteit van packages beheren
Bekijk de versiestrategie voor Laravel en Testbench en het beheer van de CI-matrix.