[[oktatas:web:laravel:laravel_rest_api|< Laravel API]] ====== Laravel REST API - Tesztelés ====== * **Szerző:** Sallai András * Copyright (c) 2022, Sallai András * Szerkesztve: 2022, 2023, 2025 * Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]] * Web: https://szit.hu ===== Teszt generálása ===== Teszteket a következő paranccsal generálhatunk: php artisan make:test ValamiTest A teszt neve után a végződés kötelezően Test. ===== Létrejön ===== get('/'); $response->assertStatus(200); } } Javítsuk így get('/api/employees'); $response->assertStatus(200); } } A tesztfüggvények neve tetszőleges, de a test szóval kell kezdődnie. ===== Futtatás ===== A teszt futtatása: php artisan test Vagy: ./vendor/bin/phpunit ==== Ha nem működik ==== php artisan config:clear php artisan cache:clear php artisan config:cache ==== Konfiguráció ==== A teszteket a phpunit.xml fájlban konfigurálhatjuk. Csak adott teszt futtatása: php artisan test --filter=EmpTest ===== Két teszt ===== get('/api/employees'); $response->assertStatus(200); } public function test_addemp() { $response = $this->post('/api/employees', [ 'name' => 'Arany Ede', 'city' => 'Miskolc', 'salary' => 655 ]); $response->assertStatus(201); } } ===== Adatbázis memóriában ===== ==== Kapcsolat ==== Vegyünk fel egy kapcsolat típust: 'sqlite_memory' => [ 'driver' => 'sqlite', 'database' => ':memory:', 'prefix' => '' ], ==== Teszt beállítása ==== Állítsuk be teszteléshez: === Cache törlése === php artisan config:cache ===== Tesztek csoportosítása ===== Adjuk hozzá csoportot: /** * @group eredeti */ A teljes kód: get('/'); $response->assertStatus(200); } } Futtatás kizárással: ./vendor/bin/phpunit --exclude-group eredeti