Test PHP headers with PHPUnit

后端 未结 7 1456
不思量自难忘°
不思量自难忘° 2020-11-30 22:05

I\'m trying to use PHPunit to test a class that outputs some custom headers.

The problem is that on my machine this:



        
7条回答
  •  一个人的身影
    2020-11-30 22:26

    The issue is that PHPUnit will print a header to the screen and at that point you can't add more headers.

    The work around is to run the test in an isolated process. Here is an example

    This will result in:

    $ phpunit FooTest.php
    PHPUnit 3.6.10 by Sebastian Bergmann.
    
    .
    
    Time: 1 second, Memory: 9.00Mb
    
    OK (1 test, 0 assertions)
    

    The key is the @runInSeparateProcess annotation.

    If you are using PHPUnit ~4.1 or something and get the error:

    PHP Fatal error:  Uncaught Error: Class 'PHPUnit_Util_Configuration' not found in -:378
    Stack trace:
    #0 {main}
      thrown in - on line 378
    
    Fatal error: Uncaught Error: Class 'PHPUnit_Util_Configuration' not found in - on line 378
    
    Error: Class 'PHPUnit_Util_Configuration' not found in - on line 378
    
    Call Stack:
        0.0013     582512   1. {main}() -:0
    

    Try add this to your bootstrap file to fix it:

提交回复
热议问题