![]() |
![]() |
![]()
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%) ![]() ![]() |
Cytat Ja do tego uzywam Panther Zainstalowałem Panther Composer'em dla mojego projektu i mam problem. Gdy uruchamiam test w "Wierszu polecania"... Kod php vendor/bin/phpunit tests/ ...wyświetla mi się "General error": Cytat '.' is not recognized as an internal or external command Znalazłem na stackoverflow.com, aby użyć WSL2 "Windows Subsystem For Linux". Z poziomu okna MSYS2 uruchamiam test w PHPUnit... Kod /c/xampp/php/php ./vendor/bin/phpunit tests/ ...i wywala mi ten sam błąd. W czym tkwi problem? Bo użycie Bash'a w WSL nie pomaga i jakiś tam skrypt dalej wyrzuca mi ten błąd pod Windows... :| (IMG:style_emoticons/default/smile.gif) PS W pliku mojego testu MainPageControllerTest.php w linii 21 - wskazywanej jako problematyczna - jest kod: Kod $client->request('GET', '/'); ...i to on przyczynia się do wyświetlenia błędu. Jak go zakomentuję/usunę, to błędu nie ma. Dziwne. (IMG:style_emoticons/default/smile.gif) PS2 Żeby było łatwiej, podaję wersje roboczą tej klasy: Kod <?php declare(strict_types=1); namespace App\Tests\Controller; use Symfony\Component\Panther\PantherTestCase; class MainPageControllerTest extends PantherTestCase { public function testMainPageAndClickPolishLanguageLink(): void { // your app is automatically started using the built-in web server $client = static::createPantherClient(); $client->request('GET', '/'); /* $client = self::createPantherClient([ 'hostname' => '127.0.0.9', // defaults to 127.0.0.1 'port' => 8080, // defaults to 9080 ]); $client->request('GET', '/'); */ // use any PHPUnit assertion, including the ones provided by Symfony... //$this->assertPageTitleContains('PHP Framework from EEQSOFT'); [...] } } PS3 Wydaje mi się, że sprawę rozwiąże użycie Docker'a. Jutro sprawdzę. (IMG:style_emoticons/default/wink.gif) Ten post edytował eerie 16.03.2025, 11:09:59 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 14:50 |