v8.2.12 - 2024-11-21
- [8.x] Supports PHP 8.4 by @crynobone in #1131
v8.2.11 - 2024-11-07
- Update MakesAssertions.php by @kenny08gt in #1149
v8.2.10 - 2024-10-22
- fix: removed Laravel\Dusk\Page import from dusk:page stub by @fxnm in #1145
- [8.x] CI Improvements by @crynobone in #1147
- [8.x] Allow to dynamically add
Tests\Browsers\Page\Page
orLaravel\Dusk\Page
viadusk:page
command by @crynobone in #1148
v8.2.9 - 2024-10-14
- check for directory existence when storing console log or storing source, if it does not exist create it by @ssanko in #1143
v8.2.8 - 2024-10-04
- [8.x] Adds Pest 3 support by @nunomaduro in #1141
v8.2.7 - 2024-09-27
- Ignore Symfony console default options by @ziadoz in #1133
- Update logo to support dark/light theme by @milewski in #1134
v8.2.6 - 2024-09-24
- Account for
preg_split()
also returningfalse
by @u01jmg3 in #1130 - [8.x] Use Artisan Console View Components by @crynobone in #1132
v8.2.5 - 2024-08-26
- [8.x] Use
Psy\debug()
function instead of deprecated method. by @crynobone in #1121 - [8.x] Explicitly set
chromedriver
port. by @crynobone in #1124
v8.2.4 - 2024-08-14
- Align with other
[@throws](https://github.com/throws)
docblocks by @u01jmg3 in #1117 - [8.x] Extract chromedriver regardless of position in archive by @aleahy in #1115
- Docblock by @u01jmg3 in #1119
v8.2.3 - 2024-08-02
- Added
--disable-search-engine-choice-screen
argument by @pascalbaljet in #1111
v8.2.2 - 2024-07-24
- fix: DuskTestCase driver function fails to read the DUSK_DRIVER_URL environment variable by @robinstraub in #1108
- [8.x] Fixes installing ChromeDriver 127 and above by @crynobone in #1110
v8.2.1 - 2024-07-08
v8.2.0 - 2024-04-16
v8.1.2 - 2024-04-16
- Move
hasHeadlessDisabled()
andshouldStartMaximized()
toLaravel\Dusk\TestCase
by @crynobone in #1098
v8.1.1 - 2024-03-28
v8.1.0 - 2024-03-25
- [8.x] Make commands lazy by @timacdonald in #1092
- New Helper
elementScreenshot
by @rabrowne85 in #1093 - Support Dusk Selectors in
screenshotElement
by @rabrowne85 in #1094 - [8.x] Separate
dump()
anddd()
usage for consistency by @crynobone in #1096
v8.0.0 - 2024-03-12
- Uses
Tests\CreatesApplication
only if exists by @nunomaduro in #1074 - Drop PHPUnit 9 and limits Laravel supported versions to 10 and 11 by @crynobone in #1077
- Remove
nesbot/carbon
dependencies by @crynobone in #1079 - [8.x] Better integrates Pest by @nunomaduro in #1082
v7.13.0 - 2024-02-23
v7.12.3 - 2024-02-15
- Fixes console logs trying to create file containing
DIRECTORY_SEPARATOR
value from data provider name. by @crynobone in #1086
v7.12.2 - 2024-02-09
- Add
assertAttributeMissing()
method by @ziadoz in #1083 - Add PHPUnit data provider set name to output filenames by @ziadoz in #1084
v7.12.1 - 2024-01-03
- Case insensitive assertions by @Bryce-Stabenow in #1073
v7.12.0 - 2023-12-05
v7.11.4 - 2023-11-14
- Limiting length of getCallerName return value to avoid issue when storing logs and screenshots by @lk77 in #1070
v7.11.3 - 2023-10-17
- Fixes unknown option "--ansi" and "--no-ansi" by @crynobone in #1068
- Fixes
waitForTextIn()
broken in v7.11.2 by @crynobone in #1067
v7.11.2 - 2023-10-10
- Consistently use
WebDriverWait
available API forWaitsForElements
trait instead of relying onCarbon
. by @crynobone in #1062
v7.11.1 - 2023-09-26
v7.11.0 - 2023-09-12
- Add
Laravel\Dusk\Keyboard::pause()
helper method by @crynobone in #1057
v7.10.0 - 2023-09-04
- Keyboard Support Improvements by @crynobone in #1053
v7.9.4 - 2023-08-28
- Remove legacy Dotenv usage by @crynobone in #1054
v7.9.3 - 2023-08-03
- [7.x] Prevent interaction with
Http::preventStrayRequests
by @joshbonnick in #1052
v7.9.2 - 2023-07-30
- [7.x] Export ignore
testbench.yaml
file by @crynobone in #1048 - [7.x] Fixes using
ChromeDriverCommand
with Telescope by @crynobone in #1050
v7.9.1 - 2023-07-27
- Normalize directory separator on
ChromeDriverCommand
by @crynobone in #1045
v7.9.0 - 2023-07-24
- Fix ChromeDriverCommand for ChromeDriver 115+ by @crynobone in #1043
v7.8.0 - 2023-07-08
- Uses Collision's printer if possible by @nunomaduro in #1038
- Fixed timeout error message that contain percent characters when calling waitForTextIn by @voidgraphics in #1029
v7.7.1 - 2023-04-13
- Allow
dusk
attribute selectors to be chained by @JayBizzle in #1034
v7.7.0 - 2023-02-21
- Use
--headless=new
by @SjorsO in #1027
v7.6.1 - 2023-02-14
- Fix PHPUnit v10 stubs by @driesvints in #1024
v7.6.0 - 2023-02-07
- Adds PHPUnit 10 support by @crynobone in #1023
v7.5.0 - 2023-01-22
- Allow custom dusk selector by @taylorotwell in https://github.com/laravel/dusk/commit/cf04717664f80204567ad3077ea7484a0be16497
v7.4.0 - 2023-01-06
- Laravel v10 support by @driesvints in #1015
v7.3.0 - 2023-01-03
- Added .env file existence check by @Kravets1996 in #1014
- Uses PHP Native Type Declarations 🐘 by @nunomaduro in #1004
v7.2.1 - 2022-12-16
- Revert "feat: add alternative tag for element selection" by @driesvints in #1013
v7.2.0 - 2022-12-14
- Add alternative tag for element selection by @pataar in #1012
v7.1.1 - 2022-09-29
- Fix updated Mac image name by @driesvints in #1001
v7.1.0 - 2022-09-27
- Add
pauseIf()
/pauseUnless()
by @u01jmg3 in #999
v7.0.2 - 2022-09-15
- Allow to click and wait [N] seconds for reload by @fabio-ivona in #998
v7.0.1 - 2022-09-02
- Remove extra Directory Separator from ChromeProcess by @GeoSot in #995
v7.0.0 - 2022-08-19
- Uses Pest if available by @nunomaduro in #771
- Use selector to double click, and to click and hold by @rodrigopedra in #848
- Bump dependencies by @driesvints in #874
- Drop PHPUnit 7 by @driesvints in #762
- Drop PHP 7.2 by @driesvints in #860
- Drop Laravel v6 & v7 support by @driesvints in #862
- Drop PHPUnit v8 by @driesvints in #861
- Remove chrome binaries by @driesvints in #873
- Drop old PHP and Laravel versions by @driesvints in #993
v6.25.1 - 2022-07-25
- Try clicking all elements before throwing
ElementClickInterceptedException
by @SjorsO in #989
v6.25.0 - 2022-07-11
- Added responsiveScreenShots method by @ps-sean in #984
- Add
assertIndeterminate
assertion for checkbox. by @crynobone in #986
v6.24.0 - 2022-05-09
- Add
hasStartMaximizedEnabled
method by @roksprogar in #978
v6.23.1 - 2022-05-02
- Fix storing page source to disk when source assertions fail. by @calmdev in #976
v6.23.0 - 2022-04-11
- Add
waitForEvent()
method by @michaelhue in #972
v6.22.3 - 2022-04-04
- Fixed vueAttribute for older Vue 2.x projects by @myMartek in #970
v6.22.2 - 2022-03-24
assertVue*()
methods support Vue 3 composition API by @derekmd in #969
v6.22.1 - 2022-02-15
- Fixes link assertion with single or double quote (#965)
v6.22.0 - 2022-02-01
- Add
waitForInput
by @SjorsO in #960
- Laravel 9 Support (#956)
- Add
clickAndWaitForReload
(#953)
- Fix assertValue for select elements (#942)
- throw an error if assertValue() is used with an element that does not support the value attribute (#936, 334c49f)
- Fix logout() when using AuthenticateSession and default guard (#939)
- Add new assertion
assertValueIsNot()
(#929) - Add new assertion
assertAttributeContains()
(#931, ab47680)
- Using
loginAs
with id (#922
- Fix "pest" option does not exist on
dusk:fails
command (#921)
- Add waitUntilEnabled and waitUntilDisabled (#918)
- Support waiting for URLs with
waitForLocation
(#916)
- Add
assertInputPresent
andassertInputMissing
assertions (#914)
- Add source directory creation on install (#915)
- Make DuskCommand compatible with Pest (#913)
- Fix unicode support in appendSlowly method (#907)
- Redirect page to previous URL after asserting authentication (#912)
- Allow to pass array for select multiple (#904)
- Fix for class imports (#905)
- Added middleware configuration (#888)
- Add purge console command (#887)
- Add
assertNotPresent()
assertion (#879)
- Add
$seconds
options toBrowser::elseWhenAvailable()
(#865)
- Add Chromium path for Debian 10 (#855)
- Allow passing mixed to assertVue and assertVueIsNot (#853)
- Add
Browser::elsewhereWhenAvailable()
(#846)
- Add Vue 3 support to the
assertVue*()
methods (#834)
- PHP 8 Support (#833)
- Changes in preparation for Laravel Sail
- Capture source code on failure (#819, 3c59a5c)
- Add
assertScript()
(#821) - Added
waitForTextIn
Function (#823) - Allow to utilise browser "about:blank" page (#824)
- Fix choosing random elements on
<select>
(#822) - Fix
logout()
when using AuthenticateSession middleware (#826)
- Fix the
fitContent()
method (#815)
- Allow proxy for getting latest version (#805)
- Add CookieValuePrefix detection for encrypted cookies (#804)
- Allow dotenv 5.0 to be installed (#803)
- Support Laravel 8 (#800)
- Pass ssl-no-verify option into latestVersion of ChromeDriver install (#794)
- Support clicking the topmost element at a given pair of coordinates (#788)
- Support executing closures outside of the current selector scope (#784)
- Trim trailing slash (#764)
- Dropped support for Laravel 5.7 & 5.8 (98af698, e0c173a)
- Dropped support for PHP 7.1 (210e03e)
- Dropped support for Carbon v1 (0b880e9)
- Bumped minimum Symfony dependencies to 4.3 (1ee28e1)
- Add assert attribute methods (#751)
- Adds
typeSlowly
&appendSlowly
(#748)
- Adds the missing import for
InteractsWithMouse@clickAtXPath
(#728) - Size sanity check at fitContent (#730)
- Lock php-webdriver constraints for now (#733)
- Fit content to
<html>
instead of<body>
(#726)
- Update
fitContent()
(#717)
- Cast boolean values to appropriate string (#713)
- Automatically fit content on failures (#704)
- Support phpdotenv v4 (#699)
- scrollTo: add support for selectors with quotes (#697)
- Allow for Symfony 5 (#696)
- Ensure jQuery for scrollTo (#686)
- Added missing return statement in withDuskEnvironment (#691)
- Prevent using pcntl when not installed (#692)
- Add scrollTo method (#684)
- Improve detection of latest stable ChromeDriver release (#677)
- Update regular expression base on website changes (#674)
- Allow saving screenshots in a subdirectory (#662)
- Add assertion checks if a button is disabled or enabled (#661)
- Update constraints for Laravel 6.0 (e4b4d63)
- Add proxy support to the
dusk:install
command (#659)
- Add option to fullsize the browser (#655)
- Add latest version of Facebook Webdriver (#654)
- Fix
assertVueContains
andassertVueDoesNotContain
(#638)
- Fix cookies with falsey values (#617)
- Fix
with()
and page assertions (#625) - Avoid deprecation messages on PHPUnit 8 (#620)
- Added support for
phpunit.dusk.xml.dist
(#610) - Use custom DISPLAY variable when set on Linux (#613, 2480495)
- Update minimum Laravel version (fcb2226)
- Update Symfony dependencies to latest version (788e79c)
- Prefer stable dependencies (fdb2fd4)
Dusk 4.0.0 disables cookie serialization and is intended for use with Laravel 5.6.30 or later. If you are using a previous version of Laravel, please continue using Dusk 3.0.0.
- Added
illuminate/console
as dependency (#232) - Added security measurement against registering Dusk on production (#229)
- Added
PHP_BINARY
constant to the list of PHP's executable binaries (#240)
- Changed
propagateScaffoldingToBrowser()
tosetUp()
for compatibility with PHPUnit ~6.0 (#227) - Changed
selected()
comparison to always cast the value to string (#239)
- No longer throws exception when Tty is not available (#226)
- Use
getAttribute('value')
instead ofgetText()
fortextarea
elements (#237) - Fixed bug when giving strings with apostrophe to
clickLink()
(#228)
- Added automated tests for HTML elements identified by strings with a colon (#214)
- Support for colon on HTML id tag (#214)
- Added
assertSelectHasOptions()
,assertSelectMissingOptions()
,assertSelectHasOption()
andand assertSelectMissingOption()
(#195) - Added purge console logs before starting tests (#193)
- Added
assertPathIsNot()
(#183) - Added support for back button (#187)
- Added
waitForLocation()
to allow waiting onwindow.location
to be changed (#176)