Appium along with the application gets stuck When attempting to capture the screen image in order to get the Xpaths for the overlay

Environment

  • Appium version: 1.17.1
  • Same issue on Appium version: 1.15.1
  • MAC: macOS Catalina Version 10.15.3
  • Node.js version: 12.14.0
  • iOS - simulator (iPhone 8 - 13.5) -> Xcode 11.5
  • iOS - simulator (iPhone 8 - 13.1) -> Xcode 11.1

Details

As mentioned in the problem statement ‘When attempting to capture the screen image in order to get the Xpaths for the overlay shown below, Appium along with the application gets stuck/freezes.’
I’m unable to get the Xpaths for the Origin/Destination overlay, instead, the Application along with Appium gets stuck with a constant load appearing in the Appium window
Furthermore, it seems that this issue does not replicate anywhere on the app, it’s only occurring on the overlays mentioned.

Link to Appium logs

[WD Proxy] Matched ‘/source’ to command name ‘getPageSource’
[WD Proxy] Proxying [GET /source] to [GET http://127.0.0.1:8100/session/69620966-3D2C-4635-AFCD-6E977E330857/source] with no body
[WD Proxy] Got response with status 200: {
[WD Proxy] “value” : "\n\n \n \n \n \n \n
[MJSONWP (a6e0871f)] Responding to client with driver.getPageSource() result: "\n \n \n \n \n \n
[HTTP] <-- GET /wd/hub/session/a6e0871f-0af5-4518-b471-b35c0e9874cc/source 200 849 ms - 11574
[HTTP]
[HTTP] --> GET /wd/hub/session/a6e0871f-0af5-4518-b471-b35c0e9874cc/screenshot
[HTTP] {}
[MJSONWP (a6e0871f)] Calling AppiumDriver.getScreenshot() with args: [“a6e0871f-0af5-4518-b471-b35c0e9874cc”]
[XCUITest] Executing command ‘getScreenshot’
[XCUITest] Taking screenshot with WDA
[WD Proxy] Matched ‘/screenshot’ to command name ‘getScreenshot’
[WD Proxy] Proxying [GET /screenshot] to [GET http://127.0.0.1:8100/session/69620966-3D2C-4635-AFCD-6E977E330857/screenshot] with no body
[WD Proxy] Got response with status 200: {
[WD Proxy] “value” : "iVBORw0KGgoAAAANSUhEUgAAAu4AAAU2CAIAAABFtaRRAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAC7qADAAQAAAABAAAFNgAAAACw0axrAAAAHGlET1QAAAACAAAAAAAA\r\nApsAAAAoAAACmwAAApsAAqqdWHdOOQAAQABJREFUeAHsnQd8VkX2933/29ddFakJ\r\nvQqEFDqodEJvlhWxFxSwrb13sWBbCyU9BEQURJAqvZeQ3kMKoUPo6T33/c6cZHyk\r\nKbKKq3M/N5O5M2fOzJw7M+d3z5TnEsdeVgJWAlYCVgJWAlYCVgL/sxK45H+25Lbg\r\nVgJWAlYCVgJWAlYCVgKOhTK2EVgJWAlYCVgJWAlYCfwPS8BCmf/hl2eLbiVgJWAl\r\nYCVgJWAlYKGMbQNWAlYCVgJWAlYCVgL/wxKwUOZ/+OXZolsJWAlYCVgJWAlYCVgo\r\nY9uAlYCVgJWAlYCVgJXA/7AELJT5H355tuhWAlYCVgJWAlYCVgJnhTKVlZUVFRWu\r\nAjKPRBHOI57y8nL8hri0tFSihNgkceXzk/1lZWWkxZUCGD4SXlhYKCHEnkJgKH+a\r\nR7gZniUlJSYjU0HJHRoTYjyS0DyKxOAgxEaAwlMeDc1PK7BN9fuRgLQuaTDS+6Tu\r\nrk1RYmmB4pEGLL0GYgJN45RAQriIEuZn9EguklBSCbFJIgQmFx7xSyypXMNN7kKD\r\nC5mhFD48SpF4lGq6dkNNrgYlEyv8TS1cuYlfiK1rJWAlcLoE6CPSg+ibCQkJS5cu\r\nnTVrVlBQUEBAAO40feEJDAz0P88LDlww8PPzIykuj8HBwSEhITNnzvzmm2+SkpKk\r\nh7q6lJBHCTm9tBJyVihjxhfXQYc0rsOljBSmzsS6EuM/…
[MJSONWP (a6e0871f)] Responding to client with driver.getScreenshot() result: "iVBORw0KGgoAAAANSUhEUgAAAu4AAAU2CAIAAABFtaRRAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAC7qADAAQAAAABAAAFNgAAAACw0axrAAAAHGlET1QAAAACAAAAAAAA\r\nApsAAAAoAAACmwAAApsAAqqdWHdOOQAAQABJREFUeAHsnQd8VkX2933/29ddFakJ\r\nvQqEFDqodEJvlhWxFxSwrb13sWBbCyU9BEQURJAqvZeQ3kMKoUPo6T33/c6cZHyk\r\nKbKKq3M/N5O5M2fOzJw7M+d3z5TnEsdeVgJWAlYCVgJWAlYCVgL/sxK45H+25Lbg\r\nVgJWAlYCVgJWAlYCVgKOhTK2EVgJWAlYCVgJWAlYCfwPS8BCmf/hl2eLbiVgJWAl\r\nYCVgJWAlYKGMbQNWAlYCVgJWAlYCVgL/wxKwUOZ/+OXZolsJWAlYCVgJWAlYCVgo\r\nY9uAlYCVgJWAlYCVgJXA/7AELJT5H355tuhWAlYCVgJWAlYCVgJnhTKVlZUVFRWu\r\nAjKPRBHOI57y8nL8hri0tFSihNgkceXzk/1lZWWkxZUCGD4SXlhYKCHEnkJgKH+a\r\nR7gZniUlJSYjU0HJHRoTYjyS0DyKxOAgxEaAwlMeDc1PK7BN9fuRgLQuaTDS+6Tu\r\nrk1RYmmB4pEGLL0GYgJN45RAQriIEuZn9EguklBSCbFJIgQmFx7xSyypXMNN7kKD\r\nC5mhFD48SpF4lGq6dkNNrgYlEyv8TS1cuYlfiK1rJWAlcLoE6CPSg+ibCQkJS5cu\r\nnTVrVlBQUEBAAO40feEJDAz0P88LDlww8PPzIykuj8HBwSEhITNnzvzmm2+SkpKk\r\nh7q6lJBHCTm9tBJyVihjxhfXQYc0rsOljBSmzsS6EuM/d95nK9MZw81ARix+4YyH\r\n…
[HTTP] <-- GET /wd/hub/session/a6e0871f-0af5-4518-b471-b35c0e9874cc/screenshot 200 64 ms - 392802
[HTTP]
[HTTP] --> GET /wd/hub/session/a6e0871f-0af5-4518-b471-b35c0e9874cc/window/current/size
[HTTP] {}
[MJSONWP (a6e0871f)] Calling AppiumDriver.getWindowSize() with args: [“current”,“a6e0871f-0af5-4518-b471-b35c0e9874cc”]
[XCUITest] Executing command ‘getWindowSize’
[WD Proxy] Proxying [GET /window/size] to [GET http://127.0.0.1:8100/session/69620966-3D2C-4635-AFCD-6E977E330857/window/size] with no body
[WD Proxy] Got response with status 200: {
[WD Proxy] “value” : {
[WD Proxy] “width” : 375,
[WD Proxy] “height” : 667
[WD Proxy] },
[WD Proxy] “sessionId” : “69620966-3D2C-4635-AFCD-6E977E330857”
[WD Proxy] }
[MJSONWP (a6e0871f)] Responding to client with driver.getWindowSize() result: {“width”:375,“height”:667}
[HTTP] <-- GET /wd/hub/session/a6e0871f-0af5-4518-b471-b35c0e9874cc/window/current/size 200 58 ms - 98
[HTTP]
[HTTP] --> GET /wd/hub/session/a6e0871f-0af5-4518-b471-b35c0e9874cc/source
[HTTP] {}
[MJSONWP (a6e0871f)] Calling AppiumDriver.getPageSource() with args: [“a6e0871f-0af5-4518-b471-b35c0e9874cc”]
[XCUITest] Executing command ‘getPageSource’
[WD Proxy] Matched ‘/source’ to command name ‘getPageSource’
[WD Proxy] Proxying [GET /source] to [GET http://127.0.0.1:8100/session/69620966-3D2C-4635-AFCD-6E977E330857/source] with no body
[Xcode] 2020-07-13 17:06:14.500225+0500 WebDriverAgentRunner-Runner[10319:945279] Error Domain=com.apple.dt.xctest.automation-support.error Code=8 “Error getting main window kAXErrorIPCTimeout” UserInfo={NSLocalizedDescription=Error getting main window kAXErrorIPCTimeout}
[Xcode]
[Xcode] t = 104.97s Find the Window
[Xcode]
[Xcode] t = 104.97s Requesting snapshot of accessibility hierarchy for app with pid 10323
[Xcode]
[Xcode] t = 120.98s Requesting snapshot of accessibility hierarchy for app with pid 10323
[Xcode]
[Xcode] t = 136.99s Requesting snapshot of accessibility hierarchy for app with pid 10323
[Xcode]
[Xcode] t = 153.01s Find the Window (retry 1)
[Xcode]
[Xcode] t = 153.01s Requesting snapshot of accessibility hierarchy for app with pid 10323
[Xcode]
[Xcode] t = 169.02s Requesting snapshot of accessibility hierarchy for app with pid 10323
[Xcode]
[Xcode] t = 185.03s Requesting snapshot of accessibility hierarchy for app with pid 10323
[Xcode]
[Xcode] t = 201.04s Find the Window (retry 2)
[Xcode]
[Xcode] t = 201.05s Requesting snapshot of accessibility hierarchy for app with pid 10323
[Xcode]
[Xcode] t = 217.07s Requesting snapshot of accessibility hierarchy for app with pid 10323
[Xcode]
[Xcode] t = 233.08s Requesting snapshot of accessibility hierarchy for app with pid 10323
[Xcode]
[Xcode] t = 248.10s Collecting extra data to assist test failure triage
[Xcode]
[Xcode] t = 248.10s Requesting snapshot of accessibility hierarchy for app with pid 10323
[Xcode]
[Xcode] t = 263.11s Requesting snapshot of accessibility hierarchy for app with pid 10323
[Xcode]
[Xcode] 2020-07-13 17:09:08.796220+0500 WebDriverAgentRunner-Runner[10319:945279] Enqueue Failure: Failed to get matching snapshot: Error getting main window kAXErrorIPCTimeout /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-webdriveragent/WebDriverAgentRunner/UITestingUITests.m 38 1
[Xcode]
[Xcode] 2020-07-13 17:09:08.802077+0500 WebDriverAgentRunner-Runner[10319:945279] Cannot take the snapshot of Window after 15 seconds
[Xcode]
[Xcode] 2020-07-13 17:09:08.805373+0500 WebDriverAgentRunner-Runner[10319:945279] Internal error: Error Domain=com.apple.dt.xctest.automation-support.error Code=8 “Error getting main window kAXErrorIllegalArgument” UserInfo={NSLocalizedDescription=Error getting main window kAXErrorIllegalArgument}
[Xcode]
[Xcode] 2020-07-13 17:09:08.806168+0500 WebDriverAgentRunner-Runner[10319:945279] Skipping source dump for ‘Window’ because its snapshot cannot be resolved
[Xcode]
[WD Proxy] Got response with status 200: {
[WD Proxy] “value” : “\n\n”,
[WD Proxy] “sessionId” : “69620966-3D2C-4635-AFCD-6E977E330857”
[WD Proxy] }
[MJSONWP (a6e0871f)] Responding to client with driver.getPageSource() result: “”
[HTTP] <-- GET /wd/hub/session/a6e0871f-0af5-4518-b471-b35c0e9874cc/source 200 417784 ms - 267
[HTTP]
[HTTP] --> GET /wd/hub/session/a6e0871f-0af5-4518-b471-b35c0e9874cc/screenshot
[HTTP] {}
[MJSONWP (a6e0871f)] Calling AppiumDriver.getScreenshot() with args: [“a6e0871f-0af5-4518-b471-b35c0e9874cc”]
[XCUITest] Executing command ‘getScreenshot’
[XCUITest] Taking screenshot with WDA
[WD Proxy] Matched ‘/screenshot’ to command name ‘getScreenshot’
[WD Proxy] Proxying [GET /screenshot] to [GET http://127.0.0.1:8100/session/69620966-3D2C-4635-AFCD-6E977E330857/screenshot] with no body
[Xcode] 2020-07-13 17:11:55.944167+0500 WebDriverAgentRunner-Runner[10319:945279] Getting the most recent active application (out of 1 total items)
[Xcode]
[WD Proxy] Got response with status 200: {
[WD Proxy] “value” : "iVBORw0KGgoAAAANSUhEUgAAAu4AAAU2CAIAAABFtaRRAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAC7qADAAQAAAABAAAFNgAAAACw0axrAAAAHGlET1QAAAACAAAAAAAA\r\nApsAAAAoAAACmwAAApsAAWd+HWbqoQAAQABJREFUeAHs3QeYZcV1LWCUbcv2s/0k\r\n289+DrIEIk4iJxEklHMOT7KQnG1JVrICklBCIHLOCCFAJJFEzjmDiCKDyGFy7O7p\r\nSe+/vaC4TPc0M8PMwMzs+53vdJ06u3btWl119rq7qs5dZZX6FAKFQCFQCBQChUAh\r\nUAgUAoVAIVAIFAKFQCFQCBQChUAhUAgUAoVAIVAIFAKFQCFQCBQChUAhUAgUAoVA\r\nIVAIFAKFQCFQCBQChUAhUAgUAoVAIVAIFAKFQCFQCBQChUAhUAgUAoVAIVAIFAKF\r\nQCFQCBQChUAhUAisFAi85CUveelLX9rd1HbplnyXEi972cukm/ArXvGK3IpwK9Kt\r\nZ7HTL3/5y5V1jgFNT/J///d/PznuzifQJBcvEW1N5ytf+cpWUWtgaifTcloiBdtl\r\nEKMhwg3A6Mxlk1k8g6tUIZD+lsGSUQkTCfm51fpzN1bdHbg7XzqlMtaSbgJNv37b\r\nfSvdOEWa8JCJ1u27bWsFM+Lcajanxu5h0upNqSHtVHUzdUgzKrMQKAQgYKC1EbT2\r\n2mu/4x3v+OQnP/n5z3/+n//5n53/beAj8U//9E//sogfGnwo+Nd//VdFnV1+7nOf\r\n23bbbf/f//t/733ve9dcc80M8+5zTErOIv+D5ns0tPLdz4LuR1Xk29OHvPRi1t0q\r\n60p0P7ako1nCh9QSrKirzk4y7WrVy…
[MJSONWP (a6e0871f)] Responding to client with driver.getScreenshot() result: "iVBORw0KGgoAAAANSUhEUgAAAu4AAAU2CAIAAABFtaRRAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAC7qADAAQAAAABAAAFNgAAAACw0axrAAAAHGlET1QAAAACAAAAAAAA\r\nApsAAAAoAAACmwAAApsAAWd+HWbqoQAAQABJREFUeAHs3QeYZcV1LWCUbcv2s/0k\r\n289+DrIEIk4iJxEklHMOT7KQnG1JVrICklBCIHLOCCFAJJFEzjmDiCKDyGFy7O7p\r\nSe+/vaC4TPc0M8PMwMzs+53vdJ06u3btWl119rq7qs5dZZX6FAKFQCFQCBQChUAh\r\nUAgUAoVAIVAIFAKFQCFQCBQChUAhUAgUAoVAIVAIFAKFQCFQCBQChUAhUAgUAoVA\r\nIVAIFAKFQCFQCBQChUAhUAgUAoVAIVAIFAKFQCFQCBQChUAhUAgUAoVAIVAIFAKF\r\nQCFQCBQChUAhUAisFAi85CUveelLX9rd1HbplnyXEi972cukm/ArXvGK3IpwK9Kt\r\nZ7HTL3/5y5V1jgFNT/J///d/PznuzifQJBcvEW1N5ytf+cpWUWtgaifTcloiBdtl\r\nEKMhwg3A6Mxlk1k8g6tUIZD+lsGSUQkTCfm51fpzN1bdHbg7XzqlMtaSbgJNv37b\r\nfSvdOEWa8JCJ1u27bWsFM+Lcajanxu5h0upNqSHtVHUzdUgzKrMQKAQgYKC1EbT2\r\n2mu/4x3v+OQnP/n5z3/+n//5n53/beAj8U//9E//sogfGnwo+Nd//VdFnV1+7nOf\r\n23bbbf/f//t/733ve9dcc80M8+5zTErOIv+D5ns0tPLdz4LuR1Xk29OHvPRi1t0q\r\n60p0P7ako1nCh9QSrKirzk4y7WrVyUmN7ZbLPGr/7//9vxtvvPG73/3u//zP//ze\r\n…
[HTTP] <-- GET /wd/hub/session/a6e0871f-0af5-4518-b471-b35c0e9874cc/screenshot 200 88 ms - 232050
[HTTP]
[HTTP] --> GET /wd/hub/session/a6e0871f-0af5-4518-b471-b35c0e9874cc/window/current/size
[HTTP] {}
[MJSONWP (a6e0871f)] Calling AppiumDriver.getWindowSize() with args: [“current”,“a6e0871f-0af5-4518-b471-b35c0e9874cc”]
[XCUITest] Executing command ‘getWindowSize’
[WD Proxy] Proxying [GET /window/size] to [GET http://127.0.0.1:8100/session/69620966-3D2C-4635-AFCD-6E977E330857/window/size] with no body
[Xcode] 2020-07-13 17:11:56.072626+0500 WebDriverAgentRunner-Runner[10319:945279] Getting the most recent active application (out of 1 total items)
[Xcode]
[Xcode] t = 446.55s Requesting snapshot of accessibility hierarchy for app with pid 10323

I am seeing same issue only difference for me is my app we upgraded from Xamarin Forms 3.5 to Xamarin Forms 4.6. After upgrading the xamarin forms to 4.6, we are started seeing this issue.