Laravel Packages

Continuous Testing Dashboard for Laravel

Published
Continuous Testing Dashboard for Laravel image

Tests Watcher is a continuous testing dashboard made with Laravel by Antonio Carlos Ribeiro. According to the author, think of it as “Laravel Horizon for all of your tests.” It supports PHPUnit, Laravel Dusk, PhpSpec, Behat, Atoum, and any test framework executed in the terminal. This project isn’t only for PHP, you could integrate this dashboard with Jest or Rake tests, for example.

If you want to try it out with Laravel Valet, here’s a quick start example:

laravel new ci
cd ci
composer require pragmarx/ci
php artisan vendor:publish --provider="PragmaRX\TestsWatcher\Package\ServiceProvider"
valet link ci
 
# configure database on your .env
php artisan migrate
php artisan ci:watch & php artisan ci:work &
open http://ci.dev/tests-watcher/dashboard

There are two commands responsible for updating the CI dashboard: Watcher and Tester.

The Watcher watches for test changes. If a file in your project changes, the whole test suite will run. If you change a test file, only that specific test will run.

The Tester takes the tests from the run queue, executes the tests, and logs the results.

At the time of writing, this package is known to work with the following out-of-the-box:

  • Codeception
  • PHPUnit
  • phpspec
  • behat
  • atoum
  • Nette Tester

Check out the official repo for more information on Tests Watcher and give it a try with a Laravel project.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

laravelcloud logo
Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Visit Laravel Cloud

The latest

View all →
Securing Filament plugins with Plumb image

Securing Filament plugins with Plumb

Read article
LayaPHP: Self-Hosted Text Classification for PHP and Laravel image

LayaPHP: Self-Hosted Text Classification for PHP and Laravel

Read article
WhenMounted and BigInt Props in Inertia.js v3.8 image

WhenMounted and BigInt Props in Inertia.js v3.8

Read article
Postcodes for Laravel: GB Postcode Lookup and Geography Data image

Postcodes for Laravel: GB Postcode Lookup and Geography Data

Read article
Laravel 14 Adds a defaults() Method to Eloquent Models image

Laravel 14 Adds a defaults() Method to Eloquent Models

Read article
Laravel AI SDK and Laravel MCP Security Fixes: Update Now image

Laravel AI SDK and Laravel MCP Security Fixes: Update Now

Read article