![]() |
![]() |
![]()
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... (IMG:style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
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? (IMG:style_emoticons/default/smile.gif)
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!'); } } |
|
|
![]() ![]() |
![]() |
Aktualny czas: 12.10.2025 - 10:43 |