0
我有一個工作站點在「/」上新建了Laravel 5項目。當我嘗試用PHPUnit 5.7.21
運行所提供的功能測試tests/Feature/ExampleTest.php
我收到的狀態碼500Laravel 5和PHPUnit視圖測試失敗 - 頭文件已發送
1) Tests\Feature\ExampleTest::testBasicTest
Expected status code 200 but received 500.
Failed asserting that false is true.
如提供的測試類。
<?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);
}
}
作爲$response
的一部分返回的頁面聲明以下錯誤。
ini_set(): Cannot change zlib.output_compression - headers already sent
我沒有改變提供的PHPUnit配置文件中的任何值。
在我的中間件中,我使用壓縮來確保網站的壓縮輸出。
<?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);
}
}
當我取消註釋ini_set
一行,一切順利。我能做些什麼來啓用壓縮並能夠運行PHPUnit?
非常感謝您的幫助。