Always run WKTR's WKWebViews at foreground priority. This makes sure that they don't suspend and run at foreground priority on iOS, even if those views are not visible on screen.
This is an issue to address flakiness on the bots.
Created attachment 397496 [details]
Comment on attachment 397496 [details]
Committed r260675: <https://trac.webkit.org/changeset/260675>
All reviewed patches have been landed. Closing bug and clearing flags on attachment 397496 [details].
Now I'm curious if this reduced the flakiness, and how WKTR's view could be invisible in the first place.
(In reply to Alexey Proskuryakov from comment #5)
> Now I'm curious if this reduced the flakiness, and how WKTR's view could be
> invisible in the first place.
Well, the plan is the monitor the known flaky tests on iOS and see. How can the views be not visible? I have a couple of theories:
- we are using simulators, sometimes multiple ones to run tests in parallel. How do we know all simulators are visible? E.g can one simulator be on top of another?
- some tests open new windows but on iOS we normally only display only 1 window at a time on screen.
- we may have issues determining visibility accurately in the simulator.
I will note that we disabled suspension for api tests on iOS about a year ago and it definitely addressed some of the flakiness that we were seeing. We did so by lying and saying that the views were visible at all times.
In any case, I will monitor tests with this change and I plan to look into tests that seem to have become flaky after adopting running board assertion to identify why next week.