behat/mink
Browser controller/emulator abstraction for PHP
v1.13.0
93M downloads/mo
#568 most downloaded on Packagist
minkphp/Mink
What this package is like to depend on
Last release 9 months ago
22 Nov 2025
Release timing varies
gaps range from 6 weeks to 4.0 years
Some releases are documented
notes for 10 of 26 stable releases
Nothing withdrawn
no release was ever pulled
15 years old
26 releases · first in 2011
1 release in the last 12 months
see the full history below
Release timeline
26 releases · Dec 2011 to Nov 2025Releases
latest 26-
v1.13.022 Nov 2025Release notes
Open source →New features:
- Added support for
symfony/css-selector8 - Improve PHPStorm's autocomplete for
DriverInterfacemethods
Testsuite:
- Added CI jobs for PHP 8.5
- Added support for
-
v1.12.030 Oct 2024Release notes
Open source →Bug fixes:
- Explicitly mark method parameters with
nulldefault values as nullable to avoid deprecation notice in PHP 8.4
- Explicitly mark method parameters with
-
v1.11.009 Dec 2023Release notes
Open source →New features:
- Added support for
symfony/css-selector7 - Added constants for the supported key modifiers
- Improved types to help static analysis
- Added parameter types for most methods
Testsuite:
- Added CI jobs for PHP 8.2 and 8.3
- Added static analysis in our CI
- Added support for
-
v1.10.028 Mar 2022Release notes
Open source →New features:
- Added support for
symfony/css-selector6 - Added
WebAssert::elementAttributeNotExists
Removed:
- Removed support for PHP <7.2
- Removed support for
symfony/css-selector<4.4
Bug fixes:
- Fixed phpdoc for a bunch of arguments that were not properly marked as nullable
- Added support for
-
v1.9.011 Oct 2021Release notes
Open source →New features:
- Fixed deprecation warnings on PHP 8.1
- Improved responsiveness of
Element::waitFor - Allowed selectors and replacements to be registered late
Removed:
- Removed support for PHP 5.3
Testsuite:
- Added CI jobs for PHP 8.0 and 8.1
-
v1.8.111 Mar 2020Release notes
Open source →Bug fixes:
- Fixed the phpdoc of
NodeElement::getValue. This method actually returnsnullin some cases (unchecked checkbox for instance)
- Fixed the phpdoc of
-
v1.8.011 Mar 2020Release notes
Open source →New features:
- Auto-start the session on first call to
visit.Mink::getSession()will no longer start the session automatically. - Added support for
symfony/css-selector4 and 5
Bug fixes:
- Fixed the message when reporting the deprecation of
ExpectationException::getSession() - Fixed support for XPath selectors using
|inside strings or conditions rather than as a top-level union - Fixed compatibility with PHP 7.2 not allowing to use
counton strings
Testsuite:
- Added PHP 7.1, 7.2, 7.3 and 7.4 in the CI
- Removed HHVM from CI as they stopped supporting PHP compatibility
Driver testsuite:
- The driver testsuite is no longer part of this package. Use
mink/driver-testsuiteto run driver tests instead.
Misc:
- Changed phpdoc types from
Booleantobooleanto be compatible with psalm type checking
- Auto-start the session on first call to
-
v1.7.105 Mar 2016Release notes
Open source →Bug fixes:
- Refactored the CssSelector to use the new API of the Symfony CssSelector component to be compatible with Symfony 3
Testsuite:
- Disallowed failures on PHP 7 on Travis (tests were passing since a long time)
Driver testsuite:
- Fixed the driver testsuite to account for driver inheritance when checking recommended practices
- Added a test for cookie values with semicolon, to ensure all drivers support it
- Improved the window resize test to consider headless browsers
- Fixed the compatibility of the testsuite with PHPUnit 5
- Added a test ensuring that
wait()always return a boolean even when the JS expression does not cast the value - Added HTML escaping of submitted values in the driver testsuite web-fixtures
Misc:
- Removed the Mink testsuite from archives generated by Github to make them smaller
-
v1.7.020 Sep 2015Release notes
Open source →New features:
- Added
Session::getResponseHeaderto access a response header easily - Added support for header assertions
- Added a forward compatibility layer for drivers to allow them to prepare for Mink 2.0 (they won't require any change if they use it). They should now overwrite
CoreDriver::findElementXpathsinstead of implementingfindandsetSessionthemselves. - Added escaping of the locator in the NamedSelector rather than expecting the caller to perform the escaping. Passing an escaped locator is still supported but deprecated.
- Remove the dependency on the Session in expectation exceptions. Passing the session in the exception constructor is now deprecated. The driver should be passed instead.
Bug fixes:
- Fixed the URL assertions when comparing paths ending in
.php - Silenced deprecation warnings (following the Symfony convention) to make them less invasive. Use the
symfony/phpunit-bridgeto get them reported when using Mink in your PHPUnit tests. - Fixed
NodeElement::hasClassin case the class attribute contains newlines
Testsuite:
- Made the testsuite compatible with PHPUnit strict timing mode (only the library testsuite, not the driver one)
- Added testing against PHP 7
- Added testing against lowest version of dependencies to ensure we got the lower bounds right
Driver testsuite:
- Added an extra test to ensure the right behavior when getting the HTML with empty elements
- Added a few more safeguards to ensure test failures rather than fatal errors for misbehaving drivers
- Added a test ensuring that drivers follow recommended practices
Misc:
- Added a few missing deprecation warnings for deprecated APIs or classes.
- Added
-
v1.6.104 Feb 2015Release notes
Open source →Bug fixes:
- Added a check for empty path in
WebAssert::cleanUrl()
Driver testsuite:
- Added an extra test to ensure the right behavior for traversal
Misc:
- Changed the description in the composer.json
- Switched the repository structure to use PSR-4
- Updated URLs for the move to the new Github organization
- Added a check for empty path in
-
v1.6.026 Sep 2014Nothing published for this version
-
v1.5.013 Apr 2013Nothing published for this version
-
v1.4.302 Mar 2013Nothing published for this version
-
v1.4.213 Feb 2013Nothing published for this version
-
v1.4.110 Feb 2013Nothing published for this version
-
v1.4.029 May 2012Nothing published for this version
-
v1.3.403 May 2012Nothing published for this version
-
v1.3.323 Mar 2012Nothing published for this version
-
v1.3.221 Dec 2011Nothing published for this version
-
v1.3.121 Dec 2011Nothing published for this version
-
v1.3.021 Dec 2011Nothing published for this version
-
v1.4.0beta525 May 2012Nothing published for this version
-
v1.4.0beta420 May 2012Nothing published for this version
-
v1.4.0beta318 May 2012Nothing published for this version
-
v1.4.0beta207 May 2012Nothing published for this version
-
v1.4.0beta106 May 2012Nothing published for this version