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

Testing Framework Laravel Package

typo3/testing-framework

The TYPO3 Testing Framework offers a complete toolset for testing TYPO3 extensions and core. It covers unit, functional, and acceptance tests, provides fixtures, a base TestCase, and Codeception helpers, and simplifies database-backed test setups.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit — poor for a Laravel codebase. typo3/testing-framework is not a general PHP testing utility; it is the test harness for the TYPO3 CMS core and its extensions. Its value is concentrated in TYPO3-specific concerns: bootstrapping the TYPO3 Environment, backend/frontend user simulation, DataHandler-driven fixture creation, TCA/site configuration setup, and Codeception modules that assume a TYPO3 application kernel. A Laravel application has none of those seams. There is no service provider, no Laravel HTTP kernel integration, no RefreshDatabase-style contract, and no supported path to point it at an Eloquent/Artisan application. The overlap with Laravel's testing stack (PHPUnit/Pest, database traits, HTTP assertions) is conceptual only.

Integration feasibility — low, and only in a narrow scenario. Direct adoption makes sense if the organization already operates TYPO3 (extension development, a TYPO3-based marketing or intranet site, or a monorepo spanning both stacks). In that case it is the canonical, well-maintained choice for that surface. For a pure Laravel estate, feasibility is effectively "reference architecture," not dependency: study its fixture registry, per-test database snapshot/rollback strategy, and functional-test bootstrap to inform an in-house Laravel harness.

Technical risk — high relative to the value delivered.

  • License: GPL-2.0. As a require-dev dependency used solely to run tests, exposure is usually contained, but any redistribution of test tooling or derived harness code inside a shipped product needs legal sign-off. This is a hard blocker in some commercial Laravel contexts.
  • Adoption signal: 67 stars and a score of ~21 with opportunity at 3.51 indicates a niche, ecosystem-bound package with negligible traction outside TYPO3. Expect answers to come from TYPO3 channels only.
  • Provenance: repository metadata is unresolved/unknown, and the stated last release (2026-09-16) is a future date — a packaging or indexing anomaly that should be verified before pinning anything in CI.
  • Coupling: release cadence is tied to TYPO3 major versions, which will force upgrade churn unrelated to our own roadmap.

Key questions for the team:

  1. Do we actually run TYPO3 anywhere, today or within 12 months? If no, this is a reference read, not an integration.
  2. What specific testing gap are we solving — fixtures, functional HTTP coverage, or CI speed? Laravel has mature answers for each; confirm the gap is real before importing a foreign harness.
  3. What is Legal's position on a GPL-2.0 dev dependency in our delivery model (SaaS vs. distributed artifact)?
  4. Which PHP, Codeception, and TYPO3 versions does the release we'd pin support, and what is the maintenance owner upstream?
  5. Is the anomalous release date a mirror/indexing artifact or a real tag? Verify integrity before any CI use.

Verdict: decline as a dependency for the Laravel platform; retain as a design reference and a required tool only if a TYPO3 surface exists.

Integration Approach

Stack fit. Assume no fit by default. The package expects a TYPO3 application root, a typo3conf/config layout, a database it can seed and truncate, and Codeception as the runner. Our stack is Composer + Laravel + PHPUnit/Pest, typically SQLite or a containerized MySQL in CI. Forcing the package in would mean maintaining a parallel TYPO3 bootstrap inside a Laravel repo — pure overhead with no test coverage of Laravel code.

Migration path. Two legitimate options, in priority order:

  1. Pattern port (recommended). Extract the ideas, not the code: a declarative fixture registry, deterministic per-test database snapshots with rollback, environment-scoped configuration bootstrap, and a small functional-test base class. Implement as a Laravel package or tests/Support namespace with PHPUnit/Pest. This avoids the GPL question entirely and keeps the harness aligned to our own upgrade cadence.
  2. Isolated adoption (only if TYPO3 is in scope). Install as require-dev inside the TYPO3 subproject only, never in the Laravel root composer.json. Run it in its own CI job and container. Do not share test bootstrap, fixtures, or config across the two projects.

Compatibility. Build a small matrix before committing: PHP version support, Codeception major version, TYPO3 major version, and database driver. Pin exact versions and commit the lockfile. Treat Codeception as a separate toolchain with its own upgrade budget — do not let it become the de facto runner for Laravel tests.

Sequencing.

  1. Confirm scope: does a TYPO3 surface exist? Gate everything on this.
  2. Legal review of GPL-2.0 in the intended consumption mode.
  3. Timeboxed spike (2–3 days) in a throwaway repo: stand up the framework against a minimal TYPO3 skeleton, measure setup cost and CI runtime.
  4. Decision gate: adopt isolated, or port patterns.
  5. If adopted: isolate directory, pin versions, add a dedicated CI workflow, document ownership.
  6. If porting: write an ADR capturing which patterns we borrowed and why, so the choice is reviewable later.

Operational Impact

Maintenance. As a dev dependency, the ongoing cost is upgrade tracking against TYPO3 and Codeception releases, not runtime operations. That cost is non-trivial for a team with no TYPO3 expertise: breaking changes arrive on someone else's schedule. The pattern-port option has higher upfront cost but a maintenance profile we control.

Support. Community-maintained, GPL, no vendor SLA. Issue response depends on TYPO3 core contributors. Internal expertise is likely zero, which means every question becomes an external search. Budget for one named owner if adopted.

Scaling. Functional tests of this type are database- and container-heavy: each test class typically needs a bootstrapped environment and seeded schema. Expect slower CI than our current suite and pressure to parallelize with separate databases per worker. This is manageable but is real infrastructure spend, and it buys coverage of TYPO3 code only.

Failure modes.

  • Silent drift when TYPO3 or Codeception majors move and the pinned framework lags.
  • Flaky, order-dependent tests from shared fixture/database state — the classic failure of seeded functional suites.
  • License contamination if harness code is copied into a distributed artifact without review.
  • False confidence: a green TYPO3 suite says nothing about Laravel behavior, and stakeholders may not make that distinction.
  • Supply-chain ambiguity given the unresolved repository metadata and anomalous release date.

Ramp-up. For a Laravel developer, meaningful productivity requires understanding the TYPO3 bootstrap, Environment, TCA, and DataHandler semantics — realistically 2–4 weeks before they can debug failures unaided, and longer before they can extend fixtures confidently. That is a large investment for a package whose score and opportunity signal sit near the bottom of the evaluated set. Recommend against unless TYPO3 is already an owned platform with an existing maintainer.

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.
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle