suiteResults['suites'] as $suite) { foreach($suite['tests'] as $test) { $testCount++; ($test['status'] == 1) ? $passCount++ : $failCount++; } } $result = ($failCount > 0) ? 'fail' : 'pass'; echo "\n\n$testCount tests run: $passCount passes, $failCount fails, and 0 exceptions\n\n"; } public function endTest( PHPUnit_Framework_Test $test, $time) { // Status indicator, a la PHPUnit switch($this->currentTest['status']) { case TEST_FAILURE: echo "F"; break; case TEST_ERROR: echo "E"; break; case TEST_INCOMPLETE: echo "I"; break; case TEST_SUCCESS: echo "."; break; default: echo "?"; break; } static $colCount = 0; $colCount++; if($colCount % 80 == 0) echo " - $colCount\n"; parent::endTest($test, $time); $this->writeTest($this->currentTest); } protected function writeTest($test) { if ($test['status'] != 1) { echo $this->testNameToPhrase($test['name']) . "\n". $test['message'] . "\n"; echo "In line {$test['exception']['line']} of {$test['exception']['file']}" . "\n\n"; echo Debug::get_rendered_backtrace($test['trace'], true); echo "\n--------------------\n"; } } }