overburn overburn - 2 years ago 145
PHP Question

Testing a Laravel package [SOLVED]

So, I'm writing a basic Laravel package and I seem to have stumbled upon yet another problem, this time with testing.

The package in development is currently in a

folder in the root of the project. I have modified the
file of the package to include the dependencies I need

"require-dev": {
"phpunit/phpunit": "~4.0",
"laravel/laravel": "dev-develop"

However , whenever I try running
phpunit tests
in the package folder (which contains a folder named
along with a sample test), I get the following error:

PHP Fatal error: Class 'Illuminate\Foundation\Testing\TestCase' not found in /workspace/laravel/packages/sample/http-request/tests/HttpRequestTest.php on line 8

The test file is just the auto-generated stub:


use Illuminate\Foundation\Testing\WithoutMiddleware;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\DatabaseTransactions;

class HttpRequestTest extends Illuminate\Foundation\Testing\TestCase
* A basic test example.
* @return void
public function testExample()

Any idea why this isn't working? The app tests run without a hitch, but the app itself doesn't have dependencies other than what's in the box.


Managed to make it work independently by extending the PHPUnit_Framework_TestCase:

class HttpRequestTest extends PHPUnit_Framework_TestCase

However , running it like:

vendor/bin/phpunit packages/yourname/package-name/

Works as well, so I picked it as an answer.

Answer Source

This works for me:

class HttpRequestTest extends TestCase

And running test with:

vendor/bin/phpunit packages/yourname/package-name/
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download