Ich habe ein frisch eingerichtetes Laravel 5 Projekt mit einer Arbeitsstelle auf "/". Wenn ich versuche, das bereitgestellte Feature-Test tests/Feature/ExampleTest.php
mit PHPUnit 5.7.21
zu laufen erhalte ich Statuscode 500.Laravel 5 und PHPUnit View Test schlägt fehl - Header bereits gesendet
1) Tests\Feature\ExampleTest::testBasicTest
Expected status code 200 but received 500.
Failed asserting that false is true.
Die Testklasse wird als vorgesehen.
<?php
namespace Tests\Feature;
use Tests\TestCase;
use Illuminate\Foundation\Testing\WithoutMiddleware;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\DatabaseTransactions;
class ExampleTest extends TestCase
{
/**
* A basic test example.
*
* @return void
*/
public function testBasicTest()
{
$response = $this->get('/');
$response->assertStatus(200);
}
}
Die zurückgegebene Seite als Teil $response
Zustände der folgende Fehler ist.
ini_set(): Cannot change zlib.output_compression - headers already sent
Ich habe keinen Wert in der bereitgestellten PHPUnit-Konfigurationsdatei geändert.
In meiner Middleware verwende ich die Komprimierung, um eine komprimierte Ausgabe der Website sicherzustellen.
<?php
namespace App\Http\Middleware;
use Closure;
class AfterMiddleware {
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next) {
ini_set('zlib.output_compression', 'On');
return $next($request);
}
}
Als ich Kommentar- der ini_set
Linie, alles gut geht. Was kann ich tun, um die Komprimierung zu aktivieren und PHPUnit ausführen zu können?
Vielen Dank für Ihre Hilfe im Voraus.