laravel unit testing database code example

Example 1: php unit testing laravel

<?php

namespace Tests\Unit;

use PHPUnit\Framework\TestCase;

class ExampleTest extends TestCase
{
    /**
     * A basic test example.
     *
     * @return void
     */
    public function test_basic_test()
    {
        $this->assertTrue(true);
    }
}

Example 2: how to separate test database in laravel unit test

// In your config/database.php bellow mysql add:

'mysql_testing' => [
'driver' => 'mysql',
'host' => env('TESTING_DB_HOST', 'localhost'),
'database' => env('TESTING_DB_DATABASE', 'forge'),
'username' => env('TESTING_DB_USERNAME', 'forge'),
'password' => env('TESTING_DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
],

//And now in your .env add the values for:

TESTING_DB_HOST=localhost
TESTING_DB_DATABASE=homestead_testing
TESTING_DB_USERNAME=homestead
TESTING_DB_PASSWORD=secret

// Now you can run

php artisan migrate —database=mysql_testing
// And the last thing - open your phpunit.xml file in the app folder and add this:

  <env name="DB_CONNECTION" value="mysql_testing"/>

Tags:

Php Example