Polecenie Unit laravel zwraca błąd

Odpowiedz Nowy wątek
2019-05-10 22:27
0

Dopiero się biorę za testy jednostkowe unit i na samym początku dostaje taki błąd przy wykonywaniu polecenia

./vendor/bin/phpunit tests/ExaTest.php

Dostawałem w konsoli coś takiego

class ExaTest extends PHPUnit_Framework_TestCase {
    public function testGreetings()
    {
        $greetings = 'Hello Wor';
        $this->assertTrue('Hello Wor', $greeting);
    }

}PHP Fatal error:  Uncaught PHPUnit\Runner\Exception: Class 'tests/ExaTest' could not be found in 'tests/ExaTest.php'. in /var/www/html/aplikacja??/vendor/phpunit/phpunit/src/Runner/StandardTestSuiteLoader.php:102
Stack trace:
#0 /var/www/html/aplikacja??/vendor/phpunit/phpunit/src/Runner/BaseTestRunner.php(130): PHPUnit\Runner\StandardTestSuiteLoader->load('tests/ExaTest', 'tests/ExaTest.p...')                                                                                                    
#1 /var/www/html/aplikacja??/vendor/phpunit/phpunit/src/Runner/BaseTestRunner.php(73): PHPUnit\Runner\BaseTestRunner->loadSuiteClass('tests/ExaTest', '')                                                                                                                      
#2 /var/www/html/aplikacja??/vendor/phpunit/phpunit/src/TextUI/Command.php(169): PHPUnit\Runner\BaseTestRunner->getTest('tests/ExaTest', '', Array)                                                                                                                            
#3 /var/www/html/aplikacja??/vendor/phpunit/phpunit/src/TextUI/Command.php(148): PHPUnit\TextUI\Command->run(Array, true)                                                                                                                                                      
#4 /var/www/html/aplikacja??/vendor/phpunit/phpunit/phpunit(53): PHPUnit\TextUI\Command::main()                                                                                                                                                                                
#5 {main}                                                                                                                                                                                                                                                                      
  thrown in /var/www/html/aplikacja??/vendor/phpunit/phpunit/src/Runner/StandardTestSuiteLoader.php on line 102     

Więc na jakimś forum dostałem informacje, że trzeba zainstalowac młądszą wersje unit więc zainstalowałem wersje
6.0 a miałem
PHPUnit 6.5.13 by Sebastian Bergmann and contributors.a miałem

./vendor/bin/phpunit /var/www/html/aplikacja??/tests/ExaTest.php

Moja wersja laravela to Laravel Framework 5.5.45
moja wersja php to 7.0
A system to debian 9.5

Pozostało 580 znaków

2019-05-10 23:10
0

Co się dzieje gdy wpisujesz samo ./vendor/bin/phpunit?


Pozostało 580 znaków

2019-05-10 23:11
0

Wtedy jest wszystko dobrze.

PHPUnit 6.0.0 by Sebastian Bergmann and contributors.

......                                                              6 / 6 (100%)

Time: 125 ms, Memory: 10.00MB

OK (6 tests, 6 assertions)

Pozostało 580 znaków

2019-05-10 23:11
0

Ok, to spróbuj odpalić test wpisując ./vendor/bin/phpunit ExaTest.


Pozostało 580 znaków

2019-05-10 23:16
0
Cannot open file "ExaTest.php".

Pozostało 580 znaków

2019-05-10 23:44
0

Hm, no to pozostały takie warianty:

  • ./vendor/bin/phpunit tests/ExaTest
  • ./vendor/bin/phpunit Tests/ExaTest
  • ./vendor/bin/phpunit Test/ExaTest

Przed wszystkim spróbuj uruchomić composer dump (odświeży to plik autoload.php służący do automatycznego wczytywania klas PHP) + tę twoją klasę ExaTest masz umieszczoną w prawidłowym namespace (tzn. czy ExaTest.php zaczyna się od namespace Test; lub namespace Tests;)?


Pozostało 580 znaków

2019-05-10 23:54
0

Teraz miałem taki głupi błąd bo nie miałem znaków php na początku i na końcu
I teraz dałem
namespace Tests;
I dostaje taki błąd.

Class 'tests/ExaTest' could not be found in '/var/www/html/aplikacja??/tests/ExaTest.php'.

Pozostało 580 znaków

2019-05-10 23:56
0

Podeślij zawartość całego tego Twojego ExaTest.php - czasem ten błąd pojawia się także w sytuacji, gdy plik zawiera jakieś nieprawidłowe znaki.


Pozostało 580 znaków

2019-05-11 08:21
0
<?php
namespace Tests;
class ExaTest  {
    public function testGreetings()
    {
        $greetings = 'Hello';
        $this->assertTrue('Hello', $greetings);
    }
}

?>

Pozostało 580 znaków

2019-05-11 09:55
0

No teraz to brakuje Ci na pewno extends PHPUnit_Framework_TestCase :-P


Pozostało 580 znaków

2019-05-11 09:57
0
Patryk27 napisał(a):

No teraz to brakuje Ci na pewno extends PHPUnit_Framework_TestCase :-P

Właśnie to usunąłem bo zwracało mi błąd

PHP Fatal error:  Class 'Tests\PHPUnit_Framework_TestCase' not found in /var/www/html/aplikacja??/tests/ExaTest.php on line 3

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 0, botów: 1

Robot: CCBot