-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
Try running html5lib tests efficiently. #6963
Conversation
Test using WordPress PlaygroundThe changes in this pull request can previewed and tested using a WordPress Playground instance. WordPress Playground is an experimental project that creates a full WordPress instance entirely within the browser. Some things to be aware of
For more details about these limitations and more, check out the Limitations page in the WordPress Playground documentation. |
The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the Core Committers: Use this line as a base for the props when committing in SVN:
To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook. |
This is great! At the moment, it appears to be running the tests on this branch, is that expected? I expected it not to run because there are no changes to the relevant files. |
It's running for this PR because I included the two relevant GitHub Action workflow files in the list that should run the tests when updated. If there are changes to the PHPUnit workflows, it's possible they could change how the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems good, thanks!
@@ -36,7 +36,7 @@ jobs: | |||
# | |||
test-with-mysql: | |||
name: PHP ${{ matrix.php }} | |||
uses: WordPress/wordpress-develop/.github/workflows/reusable-phpunit-tests-v3.yml@trunk | |||
uses: desrosj/wordpress-develop/.github/workflows/reusable-phpunit-tests-v3.yml@try/html5lib-tests |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This needs to be updated before landing.
|
||
# | ||
# Creates a PHPUnit test job for each PHP/MariaDB combination. | ||
# | ||
test-with-mariadb: | ||
name: PHP ${{ matrix.php }} | ||
uses: WordPress/wordpress-develop/.github/workflows/reusable-phpunit-tests-v3.yml@trunk | ||
uses: desrosj/wordpress-develop/.github/workflows/reusable-phpunit-tests-v3.yml@try/html5lib-tests |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This needs to be updated before landing.
Can we not go ahead and run the tests on changes to every file in Core? there are connections through the Seems like this wouldn't be much of a cost on the CI runners or delay PRs but could provide important early warnings that something unintentionally changed the parser. |
The test group should only run if the following files are changed or patterns matched:
Any other time the workflow runs the test group will not be run. They are running for this PR because the last two files in that list are being updated to support testing that specific group separately. Are you seeing something indicating differently @dmsnell? |
@desrosj exactly. my point is that I don't understand why we're limiting it to running only when files in the |
The reason these tests were excluded from the main test run is mentioned on the ticket:
These tests currently skip 568 tests:
The amount of skipped tests were some of the main concerns in the original work: https://core.trac.wordpress.org/ticket/60227 The skipped tests may come down a bit more and at some point we may be able to hardcode lists of tests that we do not plan to support to omit them entirely (without skipping). We can always revisit the decision and consider running these tests along with the rest of the tests. |
I'd be very happy to see this move ahead, is there any way I can help? Anecdotally, some (minor) failures in the html5lib tests slipped into trunk recently. It wasn't a big problem and has already been fixed, but this work would have prevented that from happening. |
It looks like today there are I've gone and opened #7602, which is an alternative approach. Core-59251 added the ability to run only a specific test group, so the new PR takes advantage of that. I think I like the simplicity of that approach instead with the trade off of running the tests more frequently. With the numbers above, the group is now at a ~70% run rate. |
Going to close this out in favor of #7602. |
Trac ticket: https://core.trac.wordpress.org/ticket/61209.
This Pull Request is for code review only. Please keep all other discussion in the Trac ticket. Do not merge this Pull Request. See GitHub Pull Requests for Code Review in the Core Handbook for more details.