I want to upgrade my project on Laravel 8 to 9 (And then 10, but I do it step by step)
I tested on Laravel Sail the updating, I have no dependencies errors but I can’t execute my PHPUnit tests to be sure my application is still working…
All Unit tests is still working but I have a “PHPUnitFrameworkExceptionWrapper” on all my Features tests that says “Illegal offset type in isset or empty” catched on vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:216
Here my requires in composer.json :
"require": {
"php": "^7.3|^8.1",
"barryvdh/laravel-cors": "^3.0",
"fanmade/laravel-bitwise-trait": "^2.0",
"fruitcake/laravel-cors": "^2.0",
"guzzlehttp/guzzle": "^7.0.1",
"laravel-notification-channels/apn": "^5.0",
"laravel/framework": "^9.0",
"laravel/sanctum": "^2.11",
"laravel/tinker": "^2.5",
"laravel/ui": "^3.4",
"ozdemirburak/iris": "^2.4"
},
"require-dev": {
"fakerphp/faker": "^1.9.1",
"laravel/sail": "^1.0.1",
"laravel/telescope": "^4.6",
"mockery/mockery": "^1.4.4",
"nunomaduro/collision": "^6.1",
"phpunit/phpunit": "^9.5",
"spatie/laravel-ignition": "^1.0"
},
And my PHPUnit.xml :
<?xml version="1.0" encoding="UTF-8"?>
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="./vendor/phpunit/phpunit/phpunit.xsd"
bootstrap="vendor/autoload.php"
colors="true"
>
<testsuites>
<testsuite name="Unit">
<directory suffix="Test.php">./tests/Unit</directory>
</testsuite>
<testsuite name="Feature">
<directory suffix="Test.php">./tests/Feature</directory>
</testsuite>
</testsuites>
<coverage processUncoveredFiles="true">
<include>
<directory suffix=".php">./app</directory>
</include>
</coverage>
<php>
<server name="APP_ENV" value="testing"/>
<server name="BCRYPT_ROUNDS" value="4"/>
<server name="CACHE_DRIVER" value="array"/>
<server name="DB_CONNECTION" value="sqlite"/>
<server name="DB_DATABASE" value=":memory:"/>
<server name="MAIL_MAILER" value="array"/>
<server name="QUEUE_CONNECTION" value="sync"/>
<server name="SESSION_DRIVER" value="array"/>
<server name="TELESCOPE_ENABLED" value="false"/>
</php>
</phpunit>
Any ideas ?
Thanks you !