Search code examples
webdriverappiumxcode-ui-testing

Dramatically slow Web UI testing on real iOS device


We have set of mobile UI test for website written with Java, using Selenide, Cucumber, Chromedriver. All these test running fast on chrome browser emulator. Now I'm trying to run all my tests on real iOS device, using:

Appium 1.6.3;
ios_webkit_debug_proxy 1.7.1 (Built with libimobiledevice v1.2.0, libplist v1.12);
Xcode 8.2.1 (8C1002);
WebDriverAgent;
iPhone 5s (two real devices - iOS v9.2.1 and iOS v10.2.1);
MacOS Sierra 10.12.3

Test successfully passes, but it is dramatically slow. For comparison, one small scenario take 3 min 20 sec on real device, and 20 seconds on chrome emulator.

Is it possible to optimize work of ios_webkit_debug_proxy, appium or WebDriverAgent?

Looks like ios_webkit_debug_proxy makes some heap dumps during test run and this makes test slow. Am I correct? Is it possible to run tests against real iOS device without ios_webkit_debug_proxy?

Please, help me with this.


Solution

  • I’ve installed appium 1.6.4-beta and was surprised. My test become faster in ~4 times! Execution time on real device comparable with chrome emulator (for one 7-step scenario: 23 sec on chrome emulator and 50 sec on real iOS device!) Previously I’ve mentioned that execution time of this scenario took about 3 minutes (for appium 1.6.3).