3

I am automating an app on iOS with the following configuration: OSX 10.11.6, Appium 1.5.3, Xcode 7.3.1. I can use the Appium Inspector for the majority of the app except for one page once the data is loaded from a server. This page holds 1000s of UIATableCells each of which holds 5-8 UIAElements (only about 6-10 cells are actually shown on screen at a time). When I click the refresh button to load this page on the inspector, the spinning wheel on the refresh button spins for about 8-10 minutes and then stops and the screenshot doesn’t update. The logs show that it is in fact getting the page source however it is extremely long and takes well over 10 minutes to just print out. Appium inspector is not crashing, it is just not updating to the current screen shot.

I had the dev team create a build that loads only 2 rows of data from the server and I am able to view all of the elements correctly using the inspector. After doing some research I found that iOS UI Automation is gathering all of the elements on the page even if they are off the screen and not displayed. (Unlike Android which I believe only returns the elements that are on the screen, which is why I am able to see the elements on this page in the Appium inspector for our Android build) This issue is also happening when I run it through my code and is preventing me from scripting tests on this page.

Is there a way to limit the iOS UI Automation to only return elements on the screen? Or is there any work around or any helpful information to try to solve this issue?

Any help would be much appreciated.

Thank you.

0 Answers0