-
Notifications
You must be signed in to change notification settings - Fork 2
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
Use WordPress Playground #173
Conversation
Performance Test Results Performance test results for d4a36c2 are in 🛎️! Tests
|
In swissspidy/compare-wp-performance#17 the results seemed less stable than when using wp-env. Not sure I can say the same here 🤔 Worth keeping an eye on. |
This is lovely! Are there any blockers for this work on the Playground side that we could help with?
@bgrgicak's is working on reporting installation errors for each plugin in the WordPress plugins repository to help fix them and potentially communicate known issues within Playground. That plugin came up in the work. The error in the web version of Playground is |
No blockers per se right now I think. We just have to test this more to determine whether this is actually a good testing environment or not. For example, over at swissspidy/compare-wp-performance#17, some of the gathered metrics didn't seem very stable with Playground.
That sounds like something that could easily run on Tide :-)
Ah, good to know, thanks! 💡 |
I hear you! I'd like to investigate but I'm not sure how to connect the tabular data to the conclusion the metrics aren't stable. Would you help me connect these dots? |
Sure, so what that script in that repo does is measure things like the the TTFB difference between two WordPress versions. It does so over 100 iterations and then returns metrics such as the p50 value and standard deviation. In swissspidy/compare-wp-performance#17 I did this using both wp-env and Playground. I just re-ran those tests now, comparing WordPress nightly/trunk vs itself. See wp-env result and Playground result. I do have to say I like the results better now, but for values such as |
The merging as per WordPress/wordpress-playground#1631 doesn't seem to work. I'll probably keep the current approach until I can sort this out. |
Fixes #71
Fixes #81
This replaces wp-env with WordPress Playground, using a blueprint to configure the test environment, making it easy to replicate the same environment locally as well.
Plus, the user can provide their own blueprint, which will be merged with the base one.
In a next step, I am considering using blueprints for the test scenarios themselves as well. This way, we can do more than just simply visiting URLs & measuring Server-Timing. For example, we could declaratively tell the action to fill out forms so things like INP can be measured. See #174
Example
Workflow
User-provided blueprint
Some observations
wordpress-seo
in a blueprint and it crashed every time when trying to start the server.To-do: