![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 114 Pomógł: 0 Dołączył: 3.08.2017 Ostrzeżenie: (0%) ![]() ![]() |
Na co powinienem zwrócić uwagę, pisząc testy w PHPUnit? Co powinienem testować, a czego nie?
Napisałem kiedyś taki test kontrolera w Symfony. Jak przetestować klikanie w linki bez Symfony? Przeglądam pisanie testów w PHPUnit i nie widzę przykładów, jak to zrobić. Podpowiedzcie mi, co powinienem przetestować w mojej aplikacji... ![]() -------------------- |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 114 Pomógł: 0 Dołączył: 3.08.2017 Ostrzeżenie: (0%) ![]() ![]() |
Udało się... Działa! Napisałem taki test. Ma to sens?
![]() Kod <?php
declare(strict_types=1); namespace App\Tests\Controller; use Symfony\Component\BrowserKit\HttpBrowser; use Symfony\Component\HttpClient\HttpClient; use Symfony\Component\Panther\PantherTestCase; class MainPageControllerTest extends PantherTestCase { public function testMainPageTitleAndForm(): void { $browser = new HttpBrowser(HttpClient::create()); $browser->request('GET', '/'); $response = $browser->getResponse(); preg_match( '/<title>(PHP Framework from EEQSOFT)<\/title>/', (string) $response, $matches ); $this->assertEquals($matches[1], 'PHP Framework from EEQSOFT'); $browser->clickLink('Polish'); $response = $browser->getResponse(); preg_match( '/<title>(PHP Framework od EEQSOFT)<\/title>/', (string) $response, $matches ); $this->assertEquals($matches[1], 'PHP Framework od EEQSOFT'); $browser->clickLink('Angielski'); $browser->submitForm('Confirm', ['name' => 'Robert']); $response = $browser->getResponse(); preg_match( '/(Welcome, Robert!)/', (string) $response, $matches ); $this->assertEquals($matches[1], 'Welcome, Robert!'); } } -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 27.06.2025 - 19:43 |