Weave Code
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

Phpunit Slow Test Detector Laravel Package

ergebnis/phpunit-slow-test-detector

Detect slow PHPUnit tests with an extension delivered as a Composer package or PHAR. Configure a global maximum duration and get a report of tests exceeding the threshold after each run—ideal for catching performance regressions in your suite.

View on GitHub
Deep Wiki
Context7
`2.9.0`

For a full diff see [2.8.0...2.9.0][2.8.0...2.9.0].

Changed

  • Consistently included test setup and teardown in duration measurement ([#380]), by [@localheinz] and [@mvorisek]

Fixed

  • Required at least phpunit/phpunit:^7.5.0 ([#448]), by [@localheinz]
`2.8.0`

For a full diff see [2.7.0...2.8.0][2.7.0...2.8.0].

Added

  • Added support for phpunit/phpunit:^7.2.0 ([#447]), by [@localheinz]
`2.7.0`

For a full diff see [2.6.0...2.7.0][2.6.0...2.7.0].

Changed

  • Widened version constraints to allow installation with phpunit/phpunit:^8.5.19, phpunit/phpunit:^9.0.0, and phpunit/phpunit:^10.0.0 ([#396]), by [@localheinz]
`2.6.0`

For a full diff see [2.5.0...2.6.0][2.5.0...2.6.0].

Added

  • Added support for phpunit/phpunit:^8.5.36 ([#394]), by [@localheinz]
`2.5.0`

For a full diff see [2.4.0...2.5.0][2.4.0...2.5.0].

Added

  • Added Attribute\MaximumDuration to allow configuration of maximum duration with attributes on test method level ([#367]), by [@HypeMC]
  • Added support for PHP 8.0 ([#375]), by [@localheinz] and [@mvorisek]
  • Added support for PHP 7.4 ([#390]), by [@localheinz] and [@mvorisek]

Changed

`2.4.0`

For a full diff see [2.3.2...2.4.0][2.3.2...2.4.0].

Added

  • Added support for phpunit/phpunit:^9.6.0 ([#341]), by [@localheinz]

Changed

Fixed

  • Marked DefaultDurationFormatter as internal ([#350]), by [@localheinz]
`2.3.2`

For a full diff see [2.3.1...2.3.2][2.3.1...2.3.2].

Fixed

  • Adjusted version in manifest.xml ([#343]), by [@localheinz]
`2.3.1`

For a full diff see [2.3.0...2.3.1][2.3.0...2.3.1].

Fixed

  • Prevented inclusion of phpunit/phpunit in PHAR ([#342]), by [@localheinz]
`2.3.0`

For a full diff see [2.2.0...2.3.0][2.2.0...2.3.0].

Changed

  • Added support for installing extension as a PHAR ([#273]), by [@localheinz]
  • Added support for PHP 8.3 ([#340]), by [@localheinz]
`2.24.0`

For a full diff see [2.23.0...2.24.0][2.23.0...2.24.0].

Added

  • Added a stderr option to allow directing the output of the slow test report to stderr on phpunit/phpunit:^6, phpunit/phpunit:^7, phpunit/phpunit:^8, and phpunit/phpunit:^9 ([#788]), by [@tstarling]
`2.23.0`

For a full diff see [2.22.2...2.23.0][2.22.2...2.23.0].

Changed

  • Added table headers to slow test report output ([#768]), by [@localheinz]
  • Rendered slow test report with a duration format legend ([#773]), by [@localheinz]
`2.22.2`

For a full diff see [2.22.1...2.22.2][2.22.1...2.22.2].

Fixed

  • Excluded .docker/ directory from archive exports via .gitattributes ([#765]), by [@localheinz]
`2.22.1`

For a full diff see [2.22.0...2.22.1][2.22.0...2.22.1].

Fixed

  • Started sending output to stderr when PHPUnit is configured with stderr="true" in phpunit.xml for phpunit/phpunit:^10.0.0, phpunit/phpunit:^11.0.0, phpunit/phpunit:^12.0.0, phpunit/phpunit:^13.0.0 ([#762]), by [@localheinz]
`2.22.0`

For a full diff see [2.21.0...2.22.0][2.21.0...2.22.0].

Changed

  • Started reporting the global maximum duration only once in the header instead of repeating it on every line ([#396]), by [@mvorisek]
`2.21.0`

For a full diff see [2.20.0...2.21.0][2.20.0...2.21.0].

Added

  • Added support for phpunit/phpunit:^13.0.0 ([#757]), by [@localheinz]
  • Added support for PHP 8.5 ([#713]), by [@localheinz]

Fixed

  • Fixed discovery of [@maximumDuration](https://github.com/maximumDuration) annotation when a test case does not have any test methods ([#687]), by [@courtney-miles]

Security

  • Ignored CVE-2026-24765 security advisory in composer.json configuration because this package needs to support versions of phpunit/phpunit affected by this vulnerability ([#754]), by [@localheinz]
`2.20.0`

For a full diff see [2.19.1...2.20.0][2.19.1...2.20.0].

Changed

  • Allowed installation on PHP 8.5 ([#704]), by [@localheinz]
`2.2.0`

For a full diff see [2.1.1...2.2.0][2.1.1...2.2.0].

Changed

  • Suggested and required phpunit/phpunit as a development dependency to allow usage with phpunit/phpunit when installed as PHAR ([#272]), by [@localheinz]
`2.19.1`

For a full diff see [2.19.0...2.19.1][2.19.0...2.19.1].

Fixed

  • Fixed discovery of [@maximumDuration](https://github.com/maximumDuration) annotation when using data providers ([#675]), by [@morgan-atproperties]
`2.19.0`

For a full diff see [2.18.0...2.19.0][2.18.0...2.19.0].

Changed

  • Started formatting durations similar to phpunit/php-timer:^4.0.0, but always showing minutes ([#664]), by [@localheinz]
`2.18.0`

For a full diff see [2.17.0...2.18.0][2.17.0...2.18.0].

Added

  • Added support for phpunit/phpunit:^12.0.0 ([#651]), by [@localheinz]
`2.17.0`

For a full diff see [2.16.1...2.17.0][2.16.1...2.17.0].

Added

`2.16.1`

For a full diff see [2.16.0...2.16.1][2.16.0...2.16.1].

Fixed

  • Explicitly included vendor/composer/installed.php and vendor/composer/InstalledVersions.php when building PHAR ([#621]), by [@dantleech]
`2.16.0`

For a full diff see [2.15.1...2.16.0][2.15.1...2.16.0].

Changed

  • Allowed installation on PHP 8.4 ([#604]), by [@localheinz]
`2.15.1`

For a full diff see [2.15.0...2.15.1][2.15.0...2.15.1].

Fixed

  • Explicitly included src/ directory when building PHAR ([#598]), by [@localheinz]
`2.15.0`

For a full diff see [2.14.0...2.15.0][2.14.0...2.15.0].

Changed

  • Started showing data provider details in list of slow tests ([#559]), by [@mvorisek]
`2.14.0`

For a full diff see [2.13.0...2.14.0][2.13.0...2.14.0].

Changed

  • Added support for phpunit/phpunit:^6.5.0 ([#533]), by [@localheinz]
  • Added support for PHP 7.0 ([#534]), by [@localheinz]
`2.13.0`

For a full diff see [2.12.0...2.13.0][2.12.0...2.13.0].

Changed

`2.12.0`

For a full diff see [2.11.0...2.12.0][2.11.0...2.12.0].

Changed

`2.11.0`

For a full diff see [2.10.0...2.11.0][2.10.0...2.11.0].

Changed

`2.10.0`

For a full diff see [2.9.0...2.10.0][2.9.0...2.10.0].

Changed

  • Added support for phpunit/phpunit:^11.0.0 ([#485]), by [@localheinz]
  • Added support for using phpunit-slow-test-detector.phar with phpunit/phpunit:^9.0.0 ([#491]), by [@localheinz]
  • Added support for using phpunit-slow-test-detector.phar with phpunit/phpunit:^8.5.19 ([#494]), by [@localheinz]
  • Added support for using phpunit-slow-test-detector.phar with phpunit/phpunit:^7.5.0 ([#495]), by [@localheinz]
`2.1.1`

For a full diff see [2.1.0...2.1.1][2.1.0...2.1.1].

Fixed

  • Stopped registering extension when running phpunit with the --no-output option ([#243]), by [@localheinz]
`2.1.0`

For a full diff see [2.0.0...2.1.0][2.0.0...2.1.0].

Changed

  • Started rendering slow tests as ordered list ([#224]), by [@localheinz]
`2.0.0`

For a full diff see [1.0.0...2.0.0][1.0.0...2.0.0].

Changed

  • Allowed configuring the maximum duration via maximum-duration parameter ([#212]), by [@localheinz]
  • Allowed configuring the maximum count via maximum-count parameter ([#217]), by [@localheinz]
  • Marked classes and interfaces as internal ([#219]), by [@localheinz]
  • Brought duration formatting in line with phpunit/php-timer ([#220]), by [@localheinz]
  • Allowed configuring the maximum duration via [@maximumDuration](https://github.com/maximumDuration) annotation ([#222]), by [@localheinz]

Fixed

  • Removed possibility to configure maximum count of reported tests using the MAXIMUM_NUMBER environment variable ([#211]), by [@localheinz]
  • Increased default maximum count from 3 to 10 and default maximum duration from 125 to 500 milliseconds ([#218]), by [@localheinz]
  • Fixed resolving maximum duration from [@slowThreshold](https://github.com/slowThreshold) annotation ([#221]), by [@localheinz]
`1.0.0`

For a full diff see 7afa59c...1.0.0.

Added

Changed

  • Renamed SlowTestReporter to Reporter\Reporter (#20), by [@localheinz]
  • Renamed Reporter\Reporter to Reporter\DefaultReporter and extracted Reporter\Reporter interface (#21), by [@localheinz]
  • Renamed Collector to Collector\DefaultCollector and extracted Collector\Collector interface (#24), by [@localheinz]
  • Used TimeKeeper instead of SlowTestCollector in Subscriber\TestPreparedSubscriber (#25), by [@localheinz]
  • Used TimeKeeper and Collector\Collector instead of SlowTestCollector in Subscriber\TestPassedSubscriber (#26), by [@localheinz]
  • Composed maximum duration into SlowTest (#37), by [@localheinz]
  • Rendered maximum duration in report created by DefaultReporter (#38), by [@localheinz]

Removed

[@courtney-miles]: https://github.com/courtney-miles [@dantleech]: https://github.com/dantleech [@HypeMC]: https://github.com/HypeMC [@localheinz]: https://github.com/localheinz [@morgan-atproperties]: https://github.com/morgan-atproperties [@mvorisek]: https://github.com/mvorisek [@tstarling]: https://github.com/tstarling

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.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport