PackageTrack
Sign in Get early access

lucatume/wp-browser

A set of Codeception modules to test WordPress projects.

4.7.1 4.3M downloads/mo #2128 most downloaded on Packagist lucatume/wp-browser

What this package is like to depend on

Last release 1 months ago

05 Jul 2026

Ships fairly regularly

a new release about every 6 weeks

Most releases are documented

notes for 322 of 420 stable releases

Nothing withdrawn

no release was ever pulled

12 years old

420 releases · first in 2014

22 releases in the last 12 months

see the full history below

Release timeline

419 releases · Jul 2014 to Jul 2026
2015 2017 2019 2021 2023 2025
Release Pre-release

Releases

latest 60 of 420
  1. 4.7.1 30 Jun 2026
    Release notes

    4.7.1

    Changed

    • Refresh the bundled WordPress core PHPUnit test includes and the sqlite-database-integration plugin to their latest upstream versions (#809).
    Open source →
    Release notes

    Changed

    • Refresh the bundled WordPress core PHPUnit test includes and the sqlite-database-integration plugin to their latest upstream versions (#809).
    Open source →
  2. 4.7.0 30 Jun 2026
    Release notes

    4.7.0

    Added

    • dev:rebuild command to build the tests/_wordpress installation used by the default configuration, e.g. on a fresh clone or in CI where it is not committed. Documented the default self-contained setup on GitHub Actions, with an example workflow (#807).
    • init wpbrowser records the installed WordPress version in the WORDPRESS_VERSION entry of tests/.env; dev:rebuild reuses it (override with --wp-version) so a rebuilt installation matches the version the committed dump.sql was generated from (#807).
    • init wpbrowser (plugin and theme projects) writes a tests/_wordpress/.gitignore so the rebuildable WordPress installation is not committed; restore it with dev:rebuild (#807).
    • init wpbrowser (plugin and theme projects) writes a tests/Support/Data/.gitignore with !dump.sql so the database fixture is committed even when a global gitignore excludes *.sql (#807).

    Fixed

    • init wpbrowser set up the default-configuration admin user with the email [email protected]; it now uses [email protected] (#807).
    • MySQL server binary download no longer fails with HTTP 403: dev.mysql.com's CDN started blocking the custom user agent, so the downloader now sends a curl/<version> user agent that is allowed through (#808).
    Open source →
    Release notes

    Added

    • dev:rebuild command to build the tests/_wordpress installation used by the default configuration, e.g. on a fresh clone or in CI where it is not committed. Documented the default self-contained setup on GitHub Actions, with an example workflow (#807).
    • init wpbrowser records the installed WordPress version in the WORDPRESS_VERSION entry of tests/.env; dev:rebuild reuses it (override with --wp-version) so a rebuilt installation matches the version the committed dump.sql was generated from (#807).
    • init wpbrowser (plugin and theme projects) writes a tests/_wordpress/.gitignore so the rebuildable WordPress installation is not committed; restore it with dev:rebuild (#807).
    • init wpbrowser (plugin and theme projects) writes a tests/Support/Data/.gitignore with !dump.sql so the database fixture is committed even when a global gitignore excludes *.sql (#807).

    Fixed

    • init wpbrowser set up the default-configuration admin user with the email [email protected]; it now uses [email protected] (#807).
    • MySQL server binary download no longer fails with HTTP 403: dev.mysql.com's CDN started blocking the custom user agent, so the downloader now sends a curl/<version> user agent that is allowed through (#808).
    Open source →
  3. 4.6.1 16 Jun 2026
    Release notes

    4.6.1

    Fixed

    • wp:db:export from a SQLite installation no longer truncates values containing NUL bytes (e.g. serialized objects with protected/private properties): table rows are read with each column cast to BLOB so the SQLite3 extension does not stop at the first NUL byte, and the full value is hex-encoded into the dump.
    Open source →
    Release notes

    Fixed

    • wp:db:export from a SQLite installation no longer truncates values containing NUL bytes (e.g. serialized objects with protected/private properties): table rows are read with each column cast to BLOB so the SQLite3 extension does not stop at the first NUL byte, and the full value is hex-encoded into the dump.
    Open source →
  4. 4.6.0 09 Jun 2026
    Release notes

    4.6.0

    Changed

    • Replace the bundled lucatume\WPBrowser\Opis\Closure\* library with lucatume\WPBrowser\Utils\Packer and lucatume\WPBrowser\Utils\PackedClosure for closure serialization in the IPC pipeline.

    Removed

    • Drop the bundled includes/opis/closure/ library and its lucatume\WPBrowser\Opis\Closure\ PSR-4 autoload entry.

    Fixed

    • wp:db:export from a SQLite installation no longer produces a non-importable dump: values are hex-encoded instead of a char(10) concatenation chain that overflowed SQLite's expression-depth limit on values with many newlines (#802).
    • The installer no longer fatals when setting up WordPress 7.0: FileRequest binds the $menu, $submenu and $compat admin-menu globals to the global scope before loading the target file, so WordPress 7.0's admin bootstrap does not run uksort() on a null $menu (#804).

    Breaking change

    • The lucatume\WPBrowser\Opis\Closure\* namespace is no longer autoloaded. None of its classes were part of the documented public API but the namespace was reachable via PSR-4; any consumer that imported or extended them must migrate to lucatume\WPBrowser\Utils\PackedClosure.
    • Consumers using --classmap-authoritative Composer installs must run composer install after upgrading to drop the stale classmap entries.
    Open source →
    Release notes

    Changed

    • Replace the bundled lucatume\WPBrowser\Opis\Closure\* library with lucatume\WPBrowser\Utils\Packer and lucatume\WPBrowser\Utils\PackedClosure for closure serialization in the IPC pipeline.

    Removed

    • Drop the bundled includes/opis/closure/ library and its lucatume\WPBrowser\Opis\Closure\ PSR-4 autoload entry.

    Fixed

    • wp:db:export from a SQLite installation no longer produces a non-importable dump: values are hex-encoded instead of a char(10) concatenation chain that overflowed SQLite's expression-depth limit on values with many newlines (#802).
    • The installer no longer fatals when setting up WordPress 7.0: FileRequest binds the $menu, $submenu and $compat admin-menu globals to the global scope before loading the target file, so WordPress 7.0's admin bootstrap does not run uksort() on a null $menu (#804).

    Breaking change

    • The lucatume\WPBrowser\Opis\Closure\* namespace is no longer autoloaded. None of its classes were part of the documented public API but the namespace was reachable via PSR-4; any consumer that imported or extended them must migrate to lucatume\WPBrowser\Utils\PackedClosure.
    • Consumers using --classmap-authoritative Composer installs must run composer install after upgrading to drop the stale classmap entries.
    Open source →
  5. 4.5.15 23 Feb 2026
    Release notes

    4.5.15

    Fixed

    Open source →
    Release notes

    Fixed

    • Doc-block of wp:db:import command (thanks @sc0ttkclark).
    Open source →
  6. 4.5.14 19 Feb 2026
    Release notes

    4.5.14

    Fixed

    • StubClassFactory issue where mocking of internal classes would incorrectly detect optional constructor parameters.
    Open source →
    Release notes

    Fixed

    • StubClassFactory issue where mocking of internal classes would incorrectly detect optional constructor parameters.
    Open source →
  7. 4.5.13 18 Feb 2026
    Release notes

    Changed

    • Update Core PHPUnit test suite to latest version.
    • Update SQLite database integration plugin from version 2.2.16 to version 2.2.17
    Open source →
  8. 4.5.12 18 Feb 2026
    Release notes

    Fixed

    • Snapshot resolved config in WPFilesystem::_initialize() to preserve absolute paths across tests when _resetConfig() or _reconfigure() is called.
    Open source →
  9. 4.5.11 20 Jan 2026
    Release notes

    Changed

    • Guard setAccessible() Reflection method calls with a PHP_VERSION_ID check to skip the no-op call on PHP >= 8.1. (thanks @BrianHenryIE)
    • Update the WordPress Core PHPUnit suite
    • Update the SQLite database integration plugin from version 2.2.14 to version 2.2.16
    Open source →
  10. 4.5.10 21 Nov 2025
    Release notes

    Fixed

    • Wording in the default EndToEnd suite configuration files to reflect the nature of the suite.
    Open source →
  11. 4.5.9 05 Nov 2025
    Release notes

    Fixed

    • Anticipate plugins activation and loading in the WPLoader module to ensure pluggable functions overridden in plugins will correctly apply.
    Open source →
  12. 4.5.8 04 Nov 2025
    Release notes

    Fixed

    • Fixed DB_PASSWORD constant not being defined when dbPassword configuration parameter is set to an empty string in WPLoader module, fixes #786.
    Open source →
  13. 4.5.7 09 Sep 2025
    Release notes

    Fixed

    • Updated activatePlugin and deactivatePlugin methods in WPBrowser and WPWebDriver modules to reload the plugins page after activation.
    Open source →
  14. 4.5.6 08 Sep 2025
    Release notes

    Fixed

    • Updated activatePlugin and deactivatePlugin methods in WPBrowser and WPWebDriver modules to use WordPress 6.5+ compatible selectors.
    Open source →
  15. 4.5.5 15 Aug 2025
    Release notes

    Changed

    • Better WPLoader module output in exceptions (thanks @BrianHenryIE).
    Open source →
  16. 4.5.4 17 Jun 2025
    Release notes

    Fixed

    • Restored support for the allow-root configuration parameter in the WPCLI module.
    Open source →
  17. 4.5.3 08 May 2025
    Release notes

    Fixed

    • Extensions event subscription to avoid type issues with newer PHP versions.
    Open source →
  18. 4.5.2 25 Apr 2025
    Release notes

    Added

    • The WPLoader module will now attempt resolving the WP_CONTENT_DIR, WP_PLUGIN_DIR, WPMU_PLUGIN_DIR and pluginsFolder configuration parameters from the Codeception root directory if not possible to resolve them from the current working directory. (thanks @BrianHenryIE)
    Open source →
  19. 4.5.1 24 Apr 2025
    Release notes

    Fixed

    • Correctly serialize and unserialize options in the SQLite database implementation.
    • Fix Symlinker extension issue where the target link path would be built incorrectly.
    Open source →
  20. 4.5.0 23 Apr 2025
    Release notes

    Changed

    • Support symfony/process and symfony/filesystem version >=7.0.
    • Set PHPUnit supported version to <=12.0.0.
    Open source →
  21. 4.4.2 22 Feb 2025
    Release notes

    Fixed

    • Avoid duplicated definition issue in GenerateWPUnit command.
    • Update MySQL server class download URLs
    Open source →
  22. 4.4.1 09 Dec 2024
    Release notes

    Fixed

    • Ensure plugin activation is respected indifferent of plugins that might deactivate others during activation.
    Open source →
  23. 4.4.0 08 Dec 2024
    Release notes

    Added

    • Support for PHP 8.4. (thanks @kagg-design)
    Open source →
  24. 4.3.10 29 Nov 2024
    Release notes

    Fixed

    • Check the PID file for the PHP built-in server, MySQL and Chromedriver controllers to make sure the PID maps to an actually running process.
    Open source →
  25. 4.3.9 29 Nov 2024

    Nothing published for this version

  26. 4.3.8 27 Nov 2024
    Release notes

    Added

    • Support custom binaries for WP-CLI in the WPCLI module.
    Open source →
  27. 4.3.7 08 Nov 2024
    Release notes

    Fixed

    • In WPDb module look up the WPFilesystem module with and without leading slash.
    Open source →
  28. 4.3.6 02 Nov 2024
    Release notes

    Fixed

    • Fallback for missing $_composer_autoload_path file. (thanks @andronocean)
    Open source →
  29. 4.3.5 16 Oct 2024
    Release notes

    Changed

    • Improve LoadSandbox error and messaging (used by the WPLoader module when loadOnly: true) around Codeception early exits. (thanks @andronocean)
    Open source →
  30. 4.3.4 13 Sep 2024
    Release notes

    Fixed

    • Set proper WPTetCase::factory() return type, so IDE autocompletion works (thanks @defunctl).
    Open source →
  31. 4.3.3 11 Sep 2024
    Release notes

    Fixed

    • Ensure the WPLoader module will set the db constants when in loadOnly: true mode.
    • The WPLoader module will now set the WPBROWSER_LOAD_ONLY environment variable to 1 when in loadOnly: true and to 0 when in loadOnly: false mode.
    • Updated documentation for the WPLoader module to explicitly state that the configFlile parameter will be used both when in loadOnly: true and loadOnly: false modes.
    Open source →
  32. 4.3.2 10 Sep 2024
    Release notes

    Fixed

    • Doc-block namespace in the WPRestApiTestCase class, thanks @TimothyBJacobs.
    Open source →
  33. 4.3.1 07 Sep 2024
    Release notes

    Fixed

    • mysql command output in the MysqlServerController information output.
    Open source →
  34. 4.3.0 01 Sep 2024
    Release notes

    Added

    • Support for PHPUnit 10 and 11.
    • The MysqlServerController extension.

    Fixed

    • Ensure the WPLoader module will initialize correctly when used in loadOnly mode not using the EventDispatcherBridge extension. (thanks @lxbdr)
    • Support loading the wpdb class from either the class-wpdb.php file or the wp-db.php one, supporting older versions of WordPress (thanks @BrianHenryIE)
    • Read content, plugins and mu-plugins directories paths from the WPLoader configuration parameters correctly.
    • In the WPTestCase class, remove attachments created during tests between tests.
    Open source →
  35. 4.2.5 26 Jun 2024
    Release notes

    Changed

    • Updated documentation entry in EndToEnd suite bootstrap file.
    Open source →
  36. 4.2.4 06 Jun 2024
    Release notes

    Added

    • Re-added the Symlinker extension to allow for the symlinking of plugins and themes in place during tests.
    • Update setup to use the Symlinker extension.
    Open source →
  37. 4.2.3 03 Jun 2024
    Release notes

    Fixed

    • Disable strict connection ID check for SQLite databases to avoid errors in tests.
    Open source →
  38. 4.2.2 25 May 2024
    Release notes

    Changed

    • Better messaging when throwing due to disconnected database.
    • Add the WPLoader::beStrictAboutWpdbConnectionId configuration parameter, defaults to true, to throw if db connection changes during setup before class.
    Open source →
  39. 4.2.1 24 May 2024
    Release notes

    Fixed

    • Throw on disconnected db in WPTestCase::setUpBeforeClass, iterates over the fix for #720.
    Open source →
  40. 4.2.0 24 May 2024
    Release notes

    Added

    • Allow plugins to be loaded from arbitrary absolute or relative paths in the WPLoader module.
    • Allow themes to be loaded from arbitrary absolute or relative paths in the WPLoader module.
    • Support an array argument for the theme configuration parameter in the WPLoader module to define [parent-theme, child-theme] pairs.
    Open source →
  41. 4.1.9 18 May 2024
    Release notes

    Fixed

    • Avoid calling wpdb::db_connect() twice during WPLoader bootstrap. (thanks @calvinalkan)
    Open source →
  42. 4.1.8 13 May 2024
    Release notes

    Changed

    • Updated sqlite-integration-plugin and Core PHPUnit suite files.
    Open source →
  43. 4.1.7 12 Apr 2024
    Release notes

    Changed

    • Fix non standard installation handling, hello Bedrock! (#716)
    Open source →
  44. 4.1.6 07 Apr 2024
    Release notes

    Changed

    • Load WordPress at SUITE_BEFORE in the WPLoader module, I had previously changed this to SUITE_INIT but that was causing issues.
    • Update Core PHPUnit tests
    • Update SQLite plugin.
    Open source →
  45. 4.1.5 28 Mar 2024
    Release notes

    Changed

    • Update init template to scaffold dump file path and example tests correctly (thanks @tarecord).
    Open source →
  46. 4.1.4 19 Mar 2024
    Release notes

    Added

    • The AirplaneMode module, based on the norcross/airplane-mode plugin, to put the website under test in "airplane mode", preventing it from making any network requests during tests.
    Open source →
  47. 4.1.3 13 Mar 2024
    Release notes

    Added

    • lucatume\WPBrowser\Traits\UopzFunctions trait to provide a set of functions to work with the uopz extension; see the documentation for more details.
    Open source →
  48. 4.1.2 07 Mar 2024
    Release notes

    Changed

    • Disable MU update routine in CLI router to speed up test execution.
    Open source →
  49. 4.1.1 05 Mar 2024
    Release notes

    Changed

    • Replace ifsnop/mysqldump-php with druidfi/mysqldump-php for better performance (thanks @staabm).
    Open source →
  50. 4.1.0 20 Feb 2024
    Release notes

    Changed

    • The WPTestCase class will not backup globals and static attributes by default. Version 3 of wp-browser did not backup globals and static attributes by default, this change in version 4 is aligned with that behaviour to ease migration from version 3 to version 4.

    Added

    • Restored support for the @runInSeparateProcess annotation for test methods. Along with it, improved support for the @dataProvider annotation for test methods used in conjunction with the @runInSeparateProcess annotation to run data provider methods at most once.
    • Implemented support for the runTestsInSeparateProcesses annotation for test classes; supporting the @dataProvider annotation ro run data provider methods at most once.
    • Added support for the #[RunInSeparateProcess] attribute for test methods and the #[RunTestsInSeparateProcesses] attribute for test classes.
    • Migration guide from version 3 to version 3.5 or 4
    Open source →
  51. 4.0.21 12 Feb 2024
    Release notes

    Fixed

    • Search more paths for Chrome binaries on linux (#694, thanks to @iateadonut)

    Changed

    • List paths searched for Chrome on current platform in debug output
    Open source →
  52. 4.0.20 12 Feb 2024
    Release notes

    Added

    • Print file and line of failure during setup of plugin project, (#694, thanks to @iateadonut)
    Open source →
  53. 4.0.19 09 Feb 2024
    Release notes

    Fixed

    • PHPUnit version 10+ warnings (#692)

    Changed

    • Updated Core PHPUnit test code from wordpress/wordpress-develop.
    • Update SQLite plugin from sqlite-database-integration plugin.
    Open source →
  54. 4.0.18 23 Jan 2024
    Release notes
    • Improve messaging and documentation around initialization and setup.
    Open source →
  55. 4.0.17 14 Dec 2023
    Release notes

    Fixed

    • Improve router script to speed up localhost server.
    Open source →
  56. 4.0.16 07 Dec 2023
    Release notes

    Changed

    • Update the Core PHPUnit test suite to the latest version.
    Open source →
  57. 4.0.15 06 Dec 2023
    Release notes

    Added

    • The WPLoader::silentlyActivatePlugins configuration parameter to activate plugins without firing the activated_plugin action.
    Open source →
  58. 4.0.14 06 Dec 2023
    Release notes

    Added

    • The WPLoader::skipInstall configuration parameter to skip the WordPress installation when already installed.
    Open source →
  59. 4.0.13 28 Nov 2023
    Release notes

    Changed

    • Updated Core PHPUnit test suite
    • Updated SQLite plugin from version 2.1.1 to 2.1.2
    Open source →
  60. 4.0.12 25 Nov 2023
    Release notes

    Added

    • Added the backupGlobals, backupGlobalsExcludeList, backupStaticAttributes, backupStaticAttributesExcludeList to the WPLoader module configuration file to provide a sweeping control over the state snapshot of test cases extending the WPTestCase class. Test cases overriding those properties explicitly will have their values respected.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive