Testing

Giới thiệu

Laravel được xay dựng có kèm theo testing. Thực tế, hỗ trợ cho testing với PHPUnit đã được có sẵn và file phpunit.xml đã được thiệt lập trong ứng dụng. Framework ngoài ra còn có một số hàm helper cho phép bạn thực hiện test của ứng dụng.

Một file ExampleTest.php được cung cấp trong thư mục tests. Sau khi tạo một ứng dụng Laravel mới, chỉ cần chạy phpunit trên command line để test.

Môi trường

khi chạy tests, Laravel sẽ tự động đặt cấu hình môi trường thành testing. Laravel tự động cấu hình session và cache thành array driver trong khi testing, nghĩa là không session hoặc cache tồn tại trong khi testing.

Bạn thoải mái định nghĩa giá trị cấu hình môi trường testing khác nếu cần thiết. Biến môi trường testing có thể được cấu hình trong file phpunit.xml, nhưng hãy đảm bảo phải xóa cấu hình cache bằng cách chạy config:clear Artisan command trước khi tests!

Tạo & Chạy Tests

Để tạo một test case, sử dụng lệnh make:test Artisan command:

php artisan make:test UserTest

Lệnh này sẽ sinh ra class UserTest trong thư mục tests. Bạn có thể định nghĩa phương thức test như bình thường sử dụng PHPUnit. Để chạy tests, đơn giản chỉ cần chạy lệnh phpunit trong terminal:

<?php

use Illuminate\Foundation\Testing\WithoutMiddleware;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\DatabaseTransactions;

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

Nếu bạn định nghĩa phương thức setUp trong class test, hãy gọi parent::setUp.

Nguồn: https://laravel.com/docs/5.3/testing