iOS 8.3 Simulator: FindBy Anything is just too slow!

I tried using accessibilityLabel, accessibilityIdentifiers, names, xpaths, and classnames, but everything is just too slow. It takes more than 10 minutes for appium to figure out the location of one element in any pages with infinite scrolling implemented, and this is even not that stable. (1 out of 2 times fail to find and timeouts)

I think either this needs to be fixed from the application developer side (because i think its not normal to have hundreds of empty collection cells in the UI), but i was just wondering if any of you have any similar experiences regarding to the tabelCell or collection cells?

Could it be related to any infinite scrolling libraries? If it is, would there be any workarounds? I am not used to iOS and would love to hear some sugestions or sharings );


Yes, I have had plenty of painful experiences with iOS 8.* automated test performance. I’ve noticed that it’s very slow on screens where there’s a lot of stuff going on (relatively complex UI hierarchies). Instruments’ performance also tends to degrade over the session if you make queries on these complex screens. I never really found a way to get around the bottleneck, but there are some small things you can do to help speed some things up:

  1. If you’re tapping on an element, and you know the element’s position ahead of time, send a tap command to that element without querying for the element’s position. This saves 1 UI query for the tap.
  2. Restart the test session after each test case to avoid the Instruments degradation.

Ultimately, the best bet is to wait, hope, and see if Apple’s new automation framework (XCUIT I think it was called) will greatly improve the speed of their systems’ tests.

1 Like