Skip to content

Do not run tests when code coverage analysis is requested but code coverage data cannot be collected #6237

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 5 commits into from

Conversation

staabm
Copy link
Contributor

@staabm staabm commented Jun 14, 2025

doing a process restart and persisting all possible cli args etc, while not just re-using composer/xdebug-handler and re-implementing everything is not a useful way and requires lots of code we would need to maintain.

therefore I figured I would just make sure that phpunit exits early instead of running all tests, when the coverage driver cannot be activated

closes #6233


1) XDEBUG_MODE=coverage (environment variable) or xdebug.mode=coverage (PHP configuration setting) has to be set

No tests executed!
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

here we see we get the warning while no more tests are run -> immediate feedback

@staabm staabm marked this pull request as ready for review June 14, 2025 10:51
*/
namespace PHPUnit\Runner;

enum CodeCoverageInitializationStatus
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
enum CodeCoverageInitializationStatus
/**
* @internal This class is not covered by the backward compatibility promise for PHPUnit
*/
enum CodeCoverageInitializationStatus

?

@staabm
Copy link
Contributor Author

staabm commented Jun 16, 2025

should be good to go

@sebastianbergmann sebastianbergmann added type/enhancement A new idea that should be implemented feature/test-runner CLI test runner feature/code-coverage Issues related to code coverage (but not php-code-coverage) labels Jun 24, 2025
@sebastianbergmann sebastianbergmann added this to the PHPUnit 12.3 milestone Jun 24, 2025
@sebastianbergmann sebastianbergmann changed the title Don't run tests when wrong xdebug mode is set Do not run tests when wrong Xdebug mode is set Jun 24, 2025
@sebastianbergmann sebastianbergmann changed the title Do not run tests when wrong Xdebug mode is set Do not run tests when code coverage is requested but the Xdebug mode is configured incorrectly Jun 24, 2025
@sebastianbergmann
Copy link
Owner

Merged manually, thanks.

@staabm staabm deleted the coverage-mode branch June 24, 2025 06:20
@staabm
Copy link
Contributor Author

staabm commented Jun 24, 2025

Thanks 🙏

@sebastianbergmann sebastianbergmann changed the title Do not run tests when code coverage is requested but the Xdebug mode is configured incorrectly Do not run tests when code coverage analysis is requested but code coverage data cannot be collected Jun 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature/code-coverage Issues related to code coverage (but not php-code-coverage) feature/test-runner CLI test runner type/enhancement A new idea that should be implemented
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Restart PHP process when code coverage data collection/processing is requested, Xdebug is loaded, but its mode is wrong
2 participants