jquery / jquery

jQuery JavaScript Library
https://jquery.com
MIT License
58.93k stars 20.62k forks source link

Migrate testing infrastructure on 3.x-stable #5427

Closed timmywil closed 2 months ago

timmywil commented 2 months ago

Summary

This is the 3.x version of #5418. There are some changes in this PR that I plan on copying to the main branch.

Sample browserstack runs on my repo:

https://github.com/timmywil/jquery/actions/runs/8118427324 https://github.com/timmywil/jquery/actions/runs/8124843564

Testing time should be around 5-10min for all 3.x browsers!

When reviewing, the first 2 commits are almost identical to the main branch versions. It's the following commits that implement changes for 3.x and new improvements.

Checklist

timmywil commented 2 months ago

It uses our built-in report API to set the browser URL when a module completes, rather than trying to use the browserstack REST API to change the URL, which had constant errors for little to no reason.

Can you explain it in a bit more detail to me?

Sure, if you look at this line, notice that any response from the report function is returned in the report API response. The only times we return responses are in response to the runEnd request:

listeners.js handles the response by taking the test URL and setting the window location.

Trying to use BrowserStack's REST API to change the URL on the worker was slower and incredibly error-prone.

timmywil commented 2 months ago

I've incorporate the feedback in #5428 as well.