sebastianbergmann / phpunit

The PHP Unit Testing framework.
https://phpunit.de/
BSD 3-Clause "New" or "Revised" License
19.71k stars 2.2k forks source link

TestDox printer does not display details about exceptions raised in before-test methods - setUpBeforeClass #5976

Open Dr-Shadow opened 1 month ago

Dr-Shadow commented 1 month ago

Hello,

This is the same problem highlighted in #5760 but when the throws occurs in the setUpBeforeClass static method.

I forked the repository and added another class for the tests (MyTestWithSetupBeforeClassThrows) - https://github.com/Dr-Shadow/phpunit-setupbeforeclass-exception

There could be other cases I could be missing

Case without testdox - OK

command :

php vendor/bin/phpunit tests/MyTestWithSetupBeforeClassThrows.php tests/MyTestWithSetupThrows.php

output :

PHPUnit 11.2.2 by Sebastian Bergmann and contributors.

Runtime:       PHP 8.3.11

EE                                                                  2 / 2 (100%)

Time: 00:00.020, Memory: 6.00 MB

There were 2 errors:

1) Tests\MyTestWithSetupBeforeClassThrows
Exception: An error has ocurred!

/var/www/html/src/ClassThatThrows.php:9
/var/www/html/tests/MyTestWithSetupBeforeClassThrows.php:12

2) Tests\MyTestWithSetupThrows::test_something
Exception: An error has ocurred!

/var/www/html/src/ClassThatThrows.php:9
/var/www/html/tests/MyTestWithSetupThrows.php:12

ERRORS!
Tests: 2, Assertions: 0, Errors: 2.

Case with testdox - KO

command :

php vendor/bin/phpunit --testdox tests/MyTestWithSetupBeforeClassThrows.php tests/MyTestWithSetupThrows.php

output :

PHPUnit 11.2.2 by Sebastian Bergmann and contributors.

Runtime:       PHP 8.3.11

EE                                                                  2 / 2 (100%)

Time: 00:00.006, Memory: 8.00 MB

My Test With Setup Throws (Tests\MyTestWithSetupThrows)
 ✘ Something
   │
   │ Exception: An error has ocurred!
   │
   │ /var/www/html/src/ClassThatThrows.php:9
   │ /var/www/html/tests/MyTestWithSetupThrows.php:12
   │

ERRORS!
Tests: 2, Assertions: 0, Errors: 2.

Problem

Exceptions thrown in setUpBeforeClass won't get displayed in the test results with --testdox

Dr-Shadow commented 1 month ago

Hello @sebastianbergmann sorry for bothering if I'm mistaken but did I miss something in my issue ?

Should I do something else than including the reproducitble tests ?

Thanks in advance