Skip to content

Pest 5 Ecosystem Adoption and Test Impact Analysis

Published: 6 tags 22 min read
Abstract composition with geometric shapes, spheres, and connecting lines — Photo by Brecht Corbeel on Unsplash
Photo by Brecht Corbeel on Unsplash

Explore Pest 5's Test Impact Analysis (TIA), autonomous AI agent verification, and the v5.1 runtime updates modernizing test suite performance across the PHP ecosystem.

Pest 5 marks a major architectural inflection point for the PHP and Laravel testing ecosystems. Rather than treating test suites as static scripts executed uniformly on every iteration, Pest 5 introduces dynamic intelligence directly into test orchestration. Built on modern PHP 8.4 language capabilities and PHPUnit 13, the framework shifts developer focus from managing test bloat toward high-frequency, targeted validation.

Central to this shift is the native Test Impact Analysis (TIA) engine, designed to eradicate redundant test runs by mapping file-level dependencies directly to test cases. Combined with automated testing capabilities powered by native AI agent plugins, Pest 5 bridges the gap between local feedback velocity and rigorous regression prevention.

As development teams scale their codebases, standard continuous integration pipelines face compounding compute costs and extended feedback delays. The adoption of Pest 5 demonstrates how modern runtime analysis and intelligent execution strategies solve these operational bottlenecks without compromising test fidelity.

The Evolution of Pest 5 and Modern PHP Ecosystem Adoption

Pest has grown from an expressive syntax layer into the de facto standard testing framework across modern PHP and Laravel development. While previous versions demonstrated the aesthetic and developer-experience advantages of functional testing syntax, Pest 5 addresses the infrastructure and execution bottlenecks faced by mature engineering teams. Its adoption across enterprise codebases reflects an industry-wide need for smarter test runtimes that scale alongside complex software architectures.

The migration path to Pest 5 remains deliberately frictionless. Teams transitioning from Pest v4 or vanilla PHPUnit can migrate with minimal code modification, requiring only dependency bumps to ^5.0 and an upgrade to PHP 8.4. Underneath, Pest 5 upgrades its execution foundation to PHPUnit 13, maintaining backward compatibility with existing assertions, datasets, and mocks while enabling next-generation capabilities out of the box.

This architecture catalyzes a fundamental cultural shift in testing. Historical best practices demanded running entire, monolithic test suites locally before submitting changes—a habit that often led developers to skip running tests locally altogether as suites grew into multi-minute barriers. Pest 5 transforms the testing culture from slow, exhaustive batch operations into rapid, continuous execution loops.

Accelerating CI/CD with Test Impact Analysis (TIA)

The Tia Engine (Test Impact Analysis) changes how tests are executed by analyzing code changes at the file dependency level. When running with the --tia flag, Pest records a dependency graph linking each test case to the exact application files, templates, and classes touched during execution. The engine relies on coverage drivers such as PCOV or Xdebug during an initial baseline run to map these boundaries:

./vendor/bin/pest --parallel --tia

Once the baseline is established, subsequent runs bypass unaffected tests entirely, executing only the tests tied to modified source files while instantly replaying cached results for the rest. According to the official Pest documentation, "A typical Laravel suite that used to take 10 minutes now replays in around 4 seconds" (source). When tests run, the output distinguishes active executions from replayed cache:

Tests: 774 passed (2658 assertions, 7 affected, 2 uncached, 765 replayed)
Duration: 3.92s

Crucially, replaying is not merely skipping. Pest stores the complete execution artifact—including line and branch coverage—ensuring that coverage thresholds and minimum coverage flags (--coverage, --min) calculate identical metrics as a full run from scratch.

In continuous integration pipelines, teams leverage TIA by generating a shared baseline artifact during automated jobs and distributing that baseline to development environments via continuous integration storage. In complex edge cases—such as modifications to global configuration files, database migrations, or ambiguous Git branch divergences—the engine gracefully falls back to complete test execution, preventing false positives from evading verification.

Autonomous Testing with Native AI Agent Verification Plugins

Pest 5 pairs its execution engine with the pestphp/pest-plugin-agent package, integrating autonomous agent verification directly into developer toolchains. While generative AI coding assistants can generate or modify application code rapidly, they typically lack an execution loop to verify runtime correctness, often leading to unverified assumptions.

The Agent plugin exposes the --agent command-line option, enabling autonomous tools to construct and execute ad-hoc, ephemeral test probes against the live application environment:

./vendor/bin/pest --agent='$user = \App\Models\User::factory()->create(); $this->actingAs($user)->get("/dashboard")->assertOk();'

Behind the scenes, Pest compiles the input snippet into an isolated, temporary test file wrapped in the application's actual testing configuration (including traits configured in tests/Pest.php like database migrations and authentication state). The agent receives standard exit codes and structured feedback, allowing it to verify its own code changes immediately.

When combined with pestphp/pest-plugin-browser, AI agents can drive Playwright-based browser sessions, clicking elements, capturing screenshots, and validating front-end state in real-time. This pairing creates a resilient testing paradigm: deterministic, developer-written unit and integration tests preserve baseline regressions, while autonomous verification scripts validate speculative modifications before they touch source control.

Operational Stability: Pest 5.1 Enhancements and Test Coverage Polish

Following the major architecture shifts of Pest 5, the v5.1 release cycle delivers operational stability and refined worker behavior required for high-throughput testing environments. A primary focus in v5.1 involves tightening internal test infrastructure for TIA and stabilizing underlying parallel worker processes.

An inspection of composer.json between release tags v5.0.0 and v5.1.0 on GitHub reveals internal updates to worker tooling, test fixtures, and core dependencies:

@@ -18,19 +18,19 @@
     ],
     "require": {
         "php": "^8.4",
-        "brianium/paratest": "^7.23.0",
+        "brianium/paratest": "^7.24.0",
         "nunomaduro/collision": "^8.9.5",
         "nunomaduro/termwind": "^2.4.0",
         "pestphp/pest-plugin": "^5.0.0",
         "pestphp/pest-plugin-arch": "^5.0.0",
-        "pestphp/pest-plugin-mutate": "^5.0.0",
+        "pestphp/pest-plugin-mutate": "^5.0.1",
         "pestphp/pest-plugin-profanity": "^5.0.0",
-        "phpunit/phpunit": "^13.2.4",
+        "phpunit/phpunit": "^13.3.0",
         "symfony/process": "^8.1.0"
     },
     "conflict": {
         "filp/whoops": "<2.18.3",
-        "phpunit/phpunit": ">13.2.4",
+        "phpunit/phpunit": ">13.3.0",
         "sebastian/exporter": "<7.0.0",
         "webmozart/assert": "<1.11.0"
     },
@@ -48,6 +48,7 @@
             "Tests\\Fixtures\\Covers\\": "tests/Fixtures/Covers",
             "Tests\\Fixtures\\Inheritance\\": "tests/Fixtures/Inheritance",
             "Tests\\Fixtures\\Arch\\": "tests/Fixtures/Arch",
+            "Tests\\Fixtures\\Tia\\": "tests/Fixtures/Tia",
             "Tests\\": "tests/PHPUnit/"
         },

(Source: GitHub Compare v5.0.0...v5.1.0)

Upgrading brianium/paratest to ^7.24.0 and phpunit/phpunit to ^13.3.0 resolves edge-case memory leaks during long-running parallel executions and provides tighter process-isolation controls across worker nodes. Furthermore, the explicit addition of the Tests\Fixtures\Tia\ namespace and dedicated test routines reflects dedicated internal test coverage hardening for the TIA dependency graph.

In practical application, Pest 5.1 optimizes test coverage line mapping by reducing runtime overhead during instrumentation passes. For teams operating enterprise suites, pairing --parallel execution with a cached TIA baseline minimizes redundant disk I/O while maintaining line-accurate coverage reports.

Pest 5 transforms the testing experience from an unselective, CPU-heavy chore into an intelligent, adaptive workflow. With Test Impact Analysis slashing iteration feedback loops, native AI plugins validating code dynamically, and Pest 5.1 delivering a stable multi-process foundation, the PHP testing ecosystem gains enterprise-level efficiency without sacrificing its signature developer experience.

Primary-source data

Retrieved by this site at draft time, straight from the primary source — not from another article.

composer.json — pestphp/pest v5.0.0 → v5.1.0

Diff fetched 2026-09-25 18:54 UTC from GitHub: compare v5.0.0...v5.1.0. Before: v5.0.0. After: v5.1.0.

@@ -18,19 +18,19 @@
     ],
     "require": {
         "php": "^8.4",
-        "brianium/paratest": "^7.23.0",
+        "brianium/paratest": "^7.24.0",
         "nunomaduro/collision": "^8.9.5",
         "nunomaduro/termwind": "^2.4.0",
         "pestphp/pest-plugin": "^5.0.0",
         "pestphp/pest-plugin-arch": "^5.0.0",
-        "pestphp/pest-plugin-mutate": "^5.0.0",
+        "pestphp/pest-plugin-mutate": "^5.0.1",
         "pestphp/pest-plugin-profanity": "^5.0.0",
-        "phpunit/phpunit": "^13.2.4",
+        "phpunit/phpunit": "^13.3.0",
         "symfony/process": "^8.1.0"
     },
     "conflict": {
         "filp/whoops": "<2.18.3",
-        "phpunit/phpunit": ">13.2.4",
+        "phpunit/phpunit": ">13.3.0",
         "sebastian/exporter": "<7.0.0",
         "webmozart/assert": "<1.11.0"
     },
@@ -48,6 +48,7 @@
             "Tests\\Fixtures\\Covers\\": "tests/Fixtures/Covers",
             "Tests\\Fixtures\\Inheritance\\": "tests/Fixtures/Inheritance",
             "Tests\\Fixtures\\Arch\\": "tests/Fixtures/Arch",
+            "Tests\\Fixtures\\Tia\\": "tests/Fixtures/Tia",
             "Tests\\": "tests/PHPUnit/"
         },
         "classmap": [
@@ -58,19 +59,19 @@
         ]
     },
     "require-dev": {
-        "laravel/pao": "^1.1.2",
         "pestphp/pest-dev-tools": "^5.0.0",
         "pestphp/pest-plugin-browser": "^5.0.0",
-        "pestphp/pest-plugin-phpstan": "^5.0.0",
-        "pestphp/pest-plugin-rector": "^5.0.0",
-        "pestphp/pest-plugin-type-coverage": "^5.0.0",
+        "pestphp/pest-plugin-phpstan": "^5.0.2",
+        "pestphp/pest-plugin-rector": "^5.0.3",
+        "pestphp/pest-plugin-type-coverage": "^5.0.2",
         "psy/psysh": "^0.12.24"
     },
     "minimum-stability": "dev",
     "prefer-stable": true,
     "config": {
         "sort-packages": true,
         "preferred-install": "dist",
+        "process-timeout": 0,
         "allow-plugins": {
             "pestphp/pest-plugin": true
         }
@@ -94,7 +95,8 @@
         "test:inline": "php bin/pest --configuration=phpunit.inline.xml",
         "test:parallel": "php bin/pest --exclude-group=integration --parallel --processes=3",
         "test:integration": "php bin/pest --group=integration -v",
-        "update:snapshots": "REBUILD_SNAPSHOTS=true php bin/pest --update-snapshots",
+        "test:tia": "php bin/pest --group=tia -v",
+        "update:snapshots": "REBUILD_SNAPSHOTS=true php bin/pest --update-snapshots --exclude-group=tia",
         "test": [
             "@test:lint",
             "@test:type:check",

Installation | Pest - The elegant PHP Testing Framework

Page fetched 2026-09-25 18:54 UTC from https://pestphp.com/docs/installation.

Documentation YouTube Sponsor 12k+ Search docs ⌘K // documentation What's New Pest 5 Now Available Getting Started Installation Editor Setup Writing Tests Expectations Hooks Datasets Exceptions Filtering Tests Skipping Tests Optimizing Tests Continuous Integration Digging Deeper Configuring Tests Grouping Tests Global Hooks Custom Helpers Custom Expectations Mocking Snapshot Testing Browser Testing Agent Architecture Testing Stress Testing Evals Test Coverage Type Coverage Mutation Testing Tia Engine Rector PHPStan Plugins Team Management Profanity Advanced Topics CLI API Reference Test Dependencies Creating Plugins Higher Order Testing More Video Resources Support Policy Upgrade Guide Migration From PHPUnit Guide Community Guide Press Pest v4 is Here! Now with Browser Testing Pest v3 Now Available Announcing Stressless Pest's Spicy Summer Release Announcing Pest 2.0 Why Pest // docs / installation edit this page → # Installation Note: Pest requires PHP 8.4+ to run. Installing the Pest PHP testing framework is a simple process you may complete in a few steps. Before you begin, make sure you have PHP 8.4+ installed on your system. First, require Pest as a "dev" dependency in your project by running the following commands on your command line: 1 composer remove phpunit/phpunit 2 composer require pestphp/pest --dev --with-all-dependencies Next, you will need to initialize Pest in your current PHP project. This step will create a configuration file named Pest.php at the root level of your test suite, allowing you to fine-tune your test suite later: 1 ./vendor/bin/pest --init Finally, you may run your tests by executing the ./vendor/bin/pest command: 1 ./vendor/bin/pest Here is an example of the output displayed when running Pest in a fresh project: → ./vendor/bin/pest PASS Tests\Unit\ExampleTest ✓ that true is true PASS Tests\Feature\ExampleTest ✓ it returns a successful response Tests: 2 passed (2 assertions) Duration: 0.09s If you are planning on using browser testing, you may install the pest-plugin-browser package to get started with browser testing in Pest. For more information, check out the Browser Testing documentation. Optionally, if you are migrating from PHPUnit, you may use the pest-plugin-drift package to automatically convert your PHPUnit tests to Pest. For more information, check out the Migrating from PHPUnit guide. After the installation process is finished, you may enhance your developer experience while working with Pest by configuring your editor: Editor Setup → . If you are migrating from PHPUnit, check out the Migration Guide → . // partners 0; i--) { const j = Math.floor(Math.random() * (i + 1)); [array[i], array[j]] = [array[j], array[i]]; } return array; }, init() { this.shuffledSponsors = [ ...this.shuffle(this.sponsors.filter(s => s.tier === 1)), ...this.shuffle(this.sponsors.filter(s => s.tier === 2)) ]; } }" x-init="init()"> Your logo here © 2026 PestPHP — A project by Nuno Maduro . Designed by Nuno Guerra . /llms.txt /source /brand /docs

Tia Engine | Pest - The elegant PHP Testing Framework

Page fetched 2026-09-25 18:54 UTC from https://pestphp.com/docs/tia.

Documentation YouTube Sponsor 12k+ Search docs ⌘K // documentation What's New Pest 5 Now Available Getting Started Installation Editor Setup Writing Tests Expectations Hooks Datasets Exceptions Filtering Tests Skipping Tests Optimizing Tests Continuous Integration Digging Deeper Configuring Tests Grouping Tests Global Hooks Custom Helpers Custom Expectations Mocking Snapshot Testing Browser Testing Agent Architecture Testing Stress Testing Evals Test Coverage Type Coverage Mutation Testing Tia Engine Rector PHPStan Plugins Team Management Profanity Advanced Topics CLI API Reference Test Dependencies Creating Plugins Higher Order Testing More Video Resources Support Policy Upgrade Guide Migration From PHPUnit Guide Community Guide Press Pest v4 is Here! Now with Browser Testing Pest v3 Now Available Announcing Stressless Pest's Spicy Summer Release Announcing Pest 2.0 Why Pest // docs / tia edit this page → # Tia Engine The Tia Engine — short for Test Impact Analysis — is a convenient way to reduce the time it takes to run your test suite, re-running only the tests affected by your latest changes. The first time you run with --tia , the engine records a graph of which tests depend on which files. On every run after that, the engine looks at what you changed, runs only the tests that touched those files, and replays cached results for everything else. A typical Laravel suite that used to take 10 minutes now replays in around 4 seconds. Edits to a single Blade template re-run a handful of feature tests. Comment-only edits, formatter passes, and README touches re-run nothing at all. To get started, you may add the --tia flag to any Pest invocation: 1 ./vendor/bin/pest --parallel --tia Warning: The Tia Engine requires a code coverage driver — either PCOV or Xdebug — to be installed and enabled. The engine uses it to record which files each test touches while building the baseline. Without a coverage driver available, Pest cannot record the dependency graph, and TIA will not run. The first run is the baseline — the engine enables a coverage driver (PCOV or Xdebug) and records the dependency graph as your tests execute. You may expect a small overhead on this run only. Warning: The Tia Engine is built for local development, and you should not add --tia to the command that runs your test suite on CI. Your pipeline exists to verify every test against a clean checkout, so it should always execute the full suite — the single exception is the dedicated job that records the shared baseline, described in Sharing The Baseline From CI . Note: You don't have to pay this baseline cost on every machine. You may have CI record the baseline once and have every developer download it from GitHub Actions, so their very first --tia run replays immediately. See Sharing The Baseline From CI to set this up. Every subsequent run is a replay . The engine compares your working tree against the baseline and re-runs only the tests affected by your changes: 1 Tests: 774 passed (2658 assertions, 7 affected, 2 uncached, 765 replayed) 2 Duration: 3.92s In this example, affected is the set of tests Pest re-ran because their dependencies changed. uncached means Pest had to execute a test because no cached result existed yet. Finally, replayed is the set whose results were served from cache. A replay isn't a shortcut that skips work — it's a faithful reconstruction of the real run. When the engine caches a test, it stores not just the pass or fail result but everything that test produced, including the exact lines and branches it covered. So a replayed run reports the same code coverage as a full run, and everything that depends on it keeps working — coverage thresholds, the --coverage report, and --min all behave exactly as if every test had executed from scratch. You get the speed of replaying with none of the fidelity lost. # How The Engine Decides What To Run For each file you have changed, the engine looks for the tests that depend on it: PHP source files — you

Excerpt truncated; the full page is at the link.

Agent | Pest - The elegant PHP Testing Framework

Page fetched 2026-09-25 18:54 UTC from https://pestphp.com/docs/agent.

Documentation YouTube Sponsor 12k+ Search docs ⌘K // documentation What's New Pest 5 Now Available Getting Started Installation Editor Setup Writing Tests Expectations Hooks Datasets Exceptions Filtering Tests Skipping Tests Optimizing Tests Continuous Integration Digging Deeper Configuring Tests Grouping Tests Global Hooks Custom Helpers Custom Expectations Mocking Snapshot Testing Browser Testing Agent Architecture Testing Stress Testing Evals Test Coverage Type Coverage Mutation Testing Tia Engine Rector PHPStan Plugins Team Management Profanity Advanced Topics CLI API Reference Test Dependencies Creating Plugins Higher Order Testing More Video Resources Support Policy Upgrade Guide Migration From PHPUnit Guide Community Guide Press Pest v4 is Here! Now with Browser Testing Pest v3 Now Available Announcing Stressless Pest's Spicy Summer Release Announcing Pest 2.0 Why Pest // docs / agent edit this page → # Agent Source code : github.com/pestphp/pest-plugin-agent AI coding agents excel at writing code, yet they often have no way to know whether that code actually works. After editing a controller, a Livewire component, a Blade template, or a bit of CSS, an agent cannot see the result — so it guesses, then moves on. Thankfully, the Agent plugin closes that loop. It gives your agent a single command to run a one-off verification against your application: 1 ./vendor/bin/pest --agent= ' $user = \App\Models\User::factory()->create(); $this->actingAs($user)->get("/dashboard")->assertOk(); ' Your agent receives a definitive pass or fail instead of a hopeful guess, with the full power of Pest at its disposal. Everything your test suite can do is available: factories, the database, mail and notification fakes, authentication, and expectations — all in the same probe. Note: The snippet is wrapped in single quotes. Single quotes tell the shell to pass everything through to PHP untouched, so $variables and \App class names need no escaping — with double outer quotes, your shell would interpolate $user to an empty string before PHP ever sees it. Within the snippet, you may use double quotes for PHP string literals. The plugin is not specific to the browser. It verifies any code your test suite can reach — backend behavior, queued jobs, mail, notifications, and more — with nothing beyond a standard Pest install. That said, it truly shines once the Browser Testing plugin is installed, because your agent may then drive a real browser and assert the side effects it triggers, all in a single command. # Getting Started To get started with the Agent plugin, require it via Composer: 1 composer require pestphp/pest-plugin-agent --dev The plugin adds the --agent option to Pest. This alone is enough to verify backend behavior. However, to also verify frontend behavior — visiting pages, screenshots, clicks, responsive checks — you should install the Browser Testing plugin as well. It is optional, yet highly recommended, as it is where the Agent plugin truly shines: 1 composer require pestphp/pest-plugin-browser --dev 2 3 npm install playwright@latest 4 npx playwright install Finally, teach your AI agent how to use the plugin by installing its guidelines and skills through Laravel Boost : 1 php artisan boost:install When prompted for third-party AI guidelines and skills, select pestphp/pest-plugin-agent . This installs the guidelines and the pest-plugin-agent skill, so your agent knows exactly when and how to reach for the --agent command. That's it. Your agent may now verify backend behavior, frontend behavior, or both, from a single command. # How It Works When you run ./vendor/bin/pest --agent='<code>' , Pest writes your snippet into a temporary test file that resembles the following: 1 <?php 2 3 it ( ' verify ' , function () { 4 // your snippet goes here... 5 }); The file runs with your project's real Pest configuration: the classes and traits you registered in tests/Pest.php via uses() — including RefreshDatabase — are applied to the generated 

Excerpt truncated; the full page is at the link.

Upgrade Guide | Pest - The elegant PHP Testing Framework

Page fetched 2026-09-25 18:54 UTC from https://pestphp.com/docs/upgrade-guide.

Documentation YouTube Sponsor 12k+ Search docs ⌘K // documentation What's New Pest 5 Now Available Getting Started Installation Editor Setup Writing Tests Expectations Hooks Datasets Exceptions Filtering Tests Skipping Tests Optimizing Tests Continuous Integration Digging Deeper Configuring Tests Grouping Tests Global Hooks Custom Helpers Custom Expectations Mocking Snapshot Testing Browser Testing Agent Architecture Testing Stress Testing Evals Test Coverage Type Coverage Mutation Testing Tia Engine Rector PHPStan Plugins Team Management Profanity Advanced Topics CLI API Reference Test Dependencies Creating Plugins Higher Order Testing More Video Resources Support Policy Upgrade Guide Migration From PHPUnit Guide Community Guide Press Pest v4 is Here! Now with Browser Testing Pest v3 Now Available Announcing Stressless Pest's Spicy Summer Release Announcing Pest 2.0 Why Pest // docs / upgrade-guide edit this page → # Upgrade Guide # Upgrading To 5.x From 4.x Estimated Upgrade Time : 2 minutes We make an effort to document every potential breaking change, but some of these changes may exist in less frequently used sections of the framework. As a result, only a subset of these changes may impact your application. # Updating Dependencies Likelihood Of Impact : High Pest 5 now requires PHP 8.4.0 or greater. To start migrating from Pest 4 to Pest 5, update the pestphp/pest dependency to ^5.0 in your application's composer.json file: 1 - "pestphp/pest": "^4.0", 2 + "pestphp/pest": "^5.0", All other Pest-maintained plugins should be updated to version ^5.0 in your application's composer.json file: 1 - "pestphp/pest-plugin-laravel": "^4.0", 2 + "pestphp/pest-plugin-laravel": "^5.0", # PHPUnit 13 Changes Likelihood Of Impact : Medium Pest 5 is built on top of PHPUnit 13. This means that any notable changes made to PHPUnit 13 might have an impact on your test suite. To examine all the changes introduced in PHPUnit 13, please consult the PHPUnit 13 changelog . # Upgrading To 4.x From 3.x Estimated Upgrade Time : 2 minutes We make an effort to document every potential breaking change, but some of these changes may exist in less frequently used sections of the framework. As a result, only a subset of these changes may impact your application. # Updating Dependencies Likelihood Of Impact : High Pest 4 now requires PHP 8.3.0 or greater. To start migrating from Pest 3 to Pest 4, update the pestphp/pest dependency to ^4.0 in your application's composer.json file: 1 - "pestphp/pest": "^3.0", 2 + "pestphp/pest": "^4.0", All other Pest-maintained plugins should be updated to version ^4.0 in your application's composer.json file: 1 - "pestphp/pest-plugin-laravel": "^3.0", 2 + "pestphp/pest-plugin-laravel": "^4.0", # Snapshot Testing Changes Likelihood Of Impact : High If you were using toMatchSnapshot , Pest 4 changes the way snapshot names are generated. As such, you will need to update your snapshot names using the --update-snapshots option: 1 ./vendor/bin/pest --update-snapshots # PHPUnit 12 Changes Likelihood Of Impact : Medium Pest 4 is built on top of PHPUnit 12. This means that any notable changes made to PHPUnit 12 might have an impact on your test suite. To examine all the changes introduced in PHPUnit 12, please consult the PHPUnit 12 changelog . # Watch & Faker Plugin Deprecations Likelihood Of Impact : Low The pestphp/pest-plugin-watch and pestphp/pest-plugin-faker plugins have been archived and are no longer maintained. The functionality provided by these plugins was not widely used, and therefore, they have been removed from Pest 4. # Upgrading To 3.x From 2.x Estimated Upgrade Time : 2 minutes We make an effort to document every potential breaking change, but some of these changes may exist in less frequently used sections of the framework. As a result, only a subset of these changes may impact your application. # Updating Dependencies Likelihood Of Impact : High Pest 3 now requires PHP 8.2.0 or greater. To start migrating from Pes

Excerpt truncated; the full page is at the link.

Share
X LinkedIn Facebook