Search code examples
phpphpunitxdebugphpstorm

Is it possible to debug PhpUnit tests with --process-isolation option?


For unittest

class SampleTest extends PHPUnit_Framework_TestCase
{
    public function testBreakpoint()
    {
        $a = 18;
    }
}

with breakpoint on line 5 "$a = 18;",

  • Xdebug v2.1.0,
  • PHPUnit 3.6.10,
  • PHP 5.3.6,
  • ubuntu 10.11

Running unittest with NO --process-isolation option stops script execution on the line 5, as expected. Running the same configuration WITH --process-isolation option does not stop execution on line 5.

The option --process-isolation runs every test in new process using 'proc_open' in runJob function in https://github.com/sebastianbergmann/phpunit/blob/3.6/PHPUnit/Util/PHP.php

Tested with PhpStorm 3 and vim 7 with debugger plugin. It allows to debug PHPUnit itself, but not testcases.

Is there any way to debug the child process created by PhpUnit using Xdebug? may be Zend Debugger?


Solution

  • As stated in the comments on the question. The issue is that PHP Storm didn't support multiple parallel debugging sessions.