experteam/api-testing-bundle
Experteam API Testing Bundle provides testing services for APIs in Symfony 5.4, including a Controller Web Test Case that streamlines controller testing. Install via Composer to simplify API test setup and speed up your testing workflow.
WebTestCase for controller-level API tests. It informs the decision of whether to maintain an in-house base test case versus adopting a vendor base class, but the scope is small enough that most teams will conclude the abstraction is cheap to write themselves (a few dozen lines) and cheaper to own.Adopt only if all of the following hold:
WebTestCase conventions.Look elsewhere if any of the following apply:
Illuminate\Foundation\Testing\TestCase + MakesHttpRequests, or tools like Pest and Laravel's built-in HTTP test helpers.composer.json constraints will likely block installation or force an unmaintained Symfony version.league/openapi-psr7-validator, Dredd, Schemathesis, or Pact instead — this bundle does none of that.Executive summary: experteam/api-testing-bundle is a very small, MIT-licensed Symfony testing helper — essentially one reusable base test case for API controller tests. It is not a Laravel package despite how it may appear in package indexes, and it only supports Symfony 5.4.
Recommendation: do not adopt as a dependency. The value is a thin convenience wrapper that any competent engineer can replicate in an afternoon using Symfony's own WebTestCase. Against that marginal benefit, we take on an unmaintained, single-contributor dependency with no stars, no dependents, and no indicated release process — a supply-chain and bus-factor liability for a component sitting directly in our test infrastructure.
To engineering: Treat this as reference material, not a dependency. If the base test case pattern is useful, copy the approach into our own tests/Support/ApiTestCase.php under our own ownership and version control. That gives us the same ergonomics with none of the external risk, and it lets us extend it for JSON schema assertions, auth fixtures, and database transaction handling — which the package does not do.
To leadership, on the two questions this raises: (1) If any team is still on Symfony 5.4, that is an unsupported-version exposure worth scheduling for remediation — it will block access to the broader ecosystem, not just this package. (2) Our standard for adding a test-infrastructure dependency should include active maintenance, a release history, and more than one maintainer; this package meets none of those, and adopting it would set a precedent we do not want.
Bottom line: low opportunity, high relative risk, near-zero switching cost to the in-house alternative. Decline and move on.
How can I help you explore Laravel packages today?