I have a project that interacts with WKWebView. I have a suite of unit tests that verify the interaction between my project and WKWebView. Many of those tests follow the following basic high level approach:
1) Instantiate a webview
2) Load some html and/or evaluate some javascript
3) Wait for a navigation finished delegate call
4) Proceed to verify some behavior
What I’m seeing is that when running many of these kinds of tests in quick succession (like when running the entire test suite) step 3 ends up sometimes timing out or requiring an increasing and ludicrous timeout (like 20 seconds). This seems to be worse when testing against an iOS 13 simulator than it is when running against an iOS 12 simulator.
I have some guesses as to why this might be happening, but I’m hoping to find an official answer or some advice on how to mitigate this behavior.
1) Instantiate a webview
2) Load some html and/or evaluate some javascript
3) Wait for a navigation finished delegate call
4) Proceed to verify some behavior
What I’m seeing is that when running many of these kinds of tests in quick succession (like when running the entire test suite) step 3 ends up sometimes timing out or requiring an increasing and ludicrous timeout (like 20 seconds). This seems to be worse when testing against an iOS 13 simulator than it is when running against an iOS 12 simulator.
I have some guesses as to why this might be happening, but I’m hoping to find an official answer or some advice on how to mitigate this behavior.