PHPunit을 사용하여 일부 사용자 지정 헤더를 출력하는 클래스를 테스트하려고합니다.
문제는 내 컴퓨터에서 다음과 같습니다.
<?php
class HeadersTest extends PHPUnit_Framework_TestCase {
public function testHeaders()
{
ob_start();
header('Location: foo');
$headers_list = headers_list();
header_remove();
ob_clean();
$this->assertContains('Location: foo', $headers_list);
}
}
또는 이것도 :
<?php
class HeadersTest extends PHPUnit_Framework_TestCase {
public function testHeaders()
{
ob_start();
header('Location: foo');
header_remove();
ob_clean();
}
}
이 오류를 반환합니다.
name@host [~/test]# phpunit --verbose HeadersTest.php
PHPUnit 3.6.10 by Sebastian Bergmann.
E
Time: 0 seconds, Memory: 2.25Mb
There was 1 error:
1) HeadersTest::testHeaders
Cannot modify header information - headers already sent by (output started at /usr/local/lib/php/PHPUnit/Util/Printer.php:173)
/test/HeadersTest.php:9
FAILURES!
Tests: 1, Assertions: 0, Errors: 1.
이것은 다른 파일이 포함되어 있지 않고 PHP 태그 시작 전에 다른 문자가 없더라도 테스트가 실행되기 전에 터미널에 출력되는 다른 내용이있는 것처럼 보입니다. 이것을 일으키는 PHPunit 내부의 무언가 일 수 있습니까?
문제가 무엇일까요?