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?
非常感谢您的帮助。