Set up end-to-end browser testing using Pest Browser Plugin + Playwright. New v4 test suite uses SQLite :memory: database with pre-generated schema dump (database/schema/testing-schema.sql) instead of running migrations, enabling faster test startup. - Add pestphp/pest-plugin-browser dependency - Create GenerateTestingSchema command to export PostgreSQL schema to SQLite - Add .env.testing configuration for isolated test environment - Implement v4 test directory structure (Feature, Browser, Unit tests) - Update Pest skill documentation with browser testing patterns, API reference, debugging techniques, and common pitfalls - Configure phpunit.xml and tests/Pest.php for v4 suite - Update package.json and docker-compose.dev.yml for testing dependencies
31 lines
1.1 KiB
XML
31 lines
1.1 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/10.3/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>
|
|
<testsuite name="v4">
|
|
<directory suffix="Test.php">./tests/v4</directory>
|
|
</testsuite>
|
|
</testsuites>
|
|
<coverage/>
|
|
<php>
|
|
<env name="APP_ENV" value="testing"/>
|
|
<env name="BCRYPT_ROUNDS" value="4"/>
|
|
<env name="CACHE_DRIVER" value="array" force="true"/>
|
|
<env name="DB_CONNECTION" value="testing" force="true"/>
|
|
|
|
<env name="MAIL_MAILER" value="array" force="true"/>
|
|
<env name="QUEUE_CONNECTION" value="sync" force="true"/>
|
|
<env name="SESSION_DRIVER" value="array" force="true"/>
|
|
<env name="TELESCOPE_ENABLED" value="false"/>
|
|
</php>
|
|
<source>
|
|
<include>
|
|
<directory suffix=".php">./app</directory>
|
|
</include>
|
|
</source>
|
|
</phpunit>
|