I am experiencing an issue with the UI in an application while using the Inspector in Appium after transitioning from Xamarin Forms 3.6 to Xamarin Forms 4.0. I am experiencing an issue with the UI elements from the login screen being carried over too the next UI screen after logging in. I also cannot access the UI elements after the login screen UI, the UI elements cannot be found. I would like to know if anyone else has experienced this issue or if there will be support for Appium with Xamarin.Forms 4.0 in the future. I wanted to make the Xamarin.Forms team aware of a compatibility issue that seems to be present with Appium and Xamarin.Forms 4.0 to see if there is something that needs/could be changed to allow compatibility between Appium and Xamarin.Forms 4.0.
Allowed to login and able to locate elements on the login screen. Able to locate elements after the login screen during the inspector session in order to write proper automation tests.
Allows logging in and is able to locate elements on the login screen. Unable to locate elements after the login screen during the inspector session. The login screen UI elements are accessible during the inspector session after login but do nothing when clicked or sent keys.
Xamarin Forms 3.6: Allows logging in and is able to locate elements on the login screen. Able to locate elements after the login screen during the inspector session.
Xamarin Forms 4.0: Allows logging in and is able to locate elements on the login screen. Unable to locate elements after the login screen during the inspector session. The login screen UI elements are accessible during the inspector session after login but do nothing when clicked or sent keys.
I am able to use the application in the simulator properly, the Appium Inspector session is the issue I am having as well as writing tests to locate certain elements after logging in. Automation tests are not working for Appium with Xamarin.Forms 4.0
I don't know how, but this is probably a consequence of https://github.com/xamarin/Xamarin.Forms/pull/3989/files#diff-0316b3b8cd1721d306b4e75736e6dcd1. It's either because we've introduced a PageContainer
that's wrapping the elements (less likely), or it's because we're now populating accessibilityElements
, which is maybe blocking Appium from retrieving the element by ID (even less likely, since VoiceOver has to be on for that to happen).
We'll have to do some testing to see what's going on here.
Thanks!
Thank you for the response, looking forward to hearing about what is found out! Thanks!
I guess we are having the same problem, we moved from xamarin.forms 3.5 to 4.x and now it seems that Appium is unable to locale elements inside of custom controls. Which means all iOS tests are failing currently + elements are not locatable anymore.
Is there any update on this topic?
@larsduewel Are you able to test with the latest 4.1 release that was published yesterday? I'd like to know if it made any positive impact. Thanks!
Just updated to 4.2.0.778463 and it works again. Do you want me to test it with 4.1 as well?
Tested with 4.1.0.673156 didn't work. Works like charm with 4.1.0.778463 (yesterdays release). I attached two screenshots. Thanks a lot and have a nice day.
Xamarin.Forms 4.1.0.673156
Xamarin.Forms 4.1.0.778463 (release from yesterday)
WONDERFUL!!! Thank you so much for testing that, @larsduewel. I am thrilled that this is working again.
@noah-mckenzie Can you also confirm that this is working for you on 4.1.0.778463+? Thank you!
Hi @samhouts
The application I am testing has recently upgraded from Xamarin Forms 3.6 to ‘4.2.0.709249’
This meant I had to change from using ID’s to Accessibility ID’s in Appium tests for most identifiers and some instances, for Android, I have to use the name or label attribute, as Appium just cannot detect elements using the Automation ID’s or Style ID’s. So Android and iOS are using different identiers a lot more than previously; But this is not as big a problem.
The big problem I have is that it made some elements are no longer visible at all in my Appium tests or via the inspector. I have raised with my Development team, but they are unsure of what is different between pages & elements that are visible and those that are not. If in the inspector, I move forward a page, refresh inspector, then go back and refresh inspector, I could then see these missing elements in inspector; but of course this is no good for automated testing.
I upgraded Xamarin Forms packages to ‘4.2.0.778463’ and also tried ‘4.2.0.815419’. It seems 778463 fixed this issue of elements not being found by the Appium tests. Seems this is in line with the fixes put in release notes:
Github #6894 - "IOS/Android Accessibility tags are not working with WebView" (#7213)
Github #6929 - "[Bug] Accessibility problem with hidden views" (#7213)
Github #7053 - "[Bug] Support for Accessibility automation properties on iOS is removed for Layouts starting from 4.0.0.346134-pre9" (#7213)
However these upgrades seem to have completely broken the Appium Inspector for iOS, so I am unable to find the XPath, class name & index, or whether to use auto id or name/label attributes for some elements etc. And having tested 815419, it is the same. The appium logs return 500 unknown error: “Cannot get ‘xml’ source of the current application”
For info, something similar raised on Appium github, but is closed:
https://github.com/appium/appium/issues/12818
I am using Visual Studio 8.3.1, Xcode 11, and have tested Appium Desktop 1.13 + 1.15
I had opened xamarin related issue with Appium https://github.com/appium/appium/issues/13753.
But they have closed it saying it is a third party issue. Can you guys please look into it and let me know why appium fails to identify certain xamarin elements in iOS app. Please look into this urgently as this is blocking automation work and could cost me my job :(
More info below ->
iOS app is built using Xamarin library. But When we use Appium XCUITest inspector to identify the elements, it does not identify some elements in app. Elements that are shown in Xamarin form pop up are not being identified. Other elements (not on pop up) are being identified.
Environment
Appium version (or git revision) that exhibits the issue: 1.15.1
Last Appium version that did not exhibit the issue (if applicable): NA
Desktop OS/version used to run Appium: Mac OS 10.15
Node.js version (unless using Appium.app|exe): 10.5
Npm or Yarn package manager:NPM
Mobile platform/version under test: iOS 12, iOS 13
Real device or emulator/simulator: Simulator
Appium CLI or Appium.app|exe: Both
Details
Xamarin Nuget Package version - 4.8
We tried 2 xamarin controls - Picker and Table. But both did not work
Picker -
The picker that appium fails to identify is using below UI components.
"ContentView" => "StackLayout" => "Picker"
Table-
Appium identifies the table but fails to identify rows in it.
Just adding on above comment, After we added the AutomationId to all pickers, Inspector was showing all these controls but When we printed the page source, it was not showing these controls and attributes. Why is Inspector showing one thing and PageSource is showing different thing?
ListView child items Automation IDs' are not visible in appium tool for UI automation tests
Hi @samhouts! I am a co-worker of @noah-mckenzie and I wanted to give you a status update from our end. I know we went a bit dark on you.
Our developers recently updated our application under test to Xamarin.Forms 4.4. Unfortunately, we now can not see inside of our app via the Appium Inspector at all. Text from Appium logs is below.
Our automated tests themselves are still able to run outside of the Inspector, but we have noticed an almost 60% degradation in performance.
I'm wondering if the reason the Inspector is throwing the errors is really down to something like a timeout. Is it possible that recent changes in Xamarin Forms could have increased the xml tree for applications?
Here is the text of the Appium logs when we try to refresh the Appium Inspector. I put the error messages themselves in bold.
[MJSONWP (1917d018)] Calling AppiumDriver.getPageSource() with args: ["1917d018-eecd-4e0c-838e-aa69b67f7b64"]
[XCUITest] Executing command 'getPageSource'
[WD Proxy] Proxying [GET /window/size] to [GET http://localhost:8100/session/0492F569-03A0-4A11-80A5-D3B54CB8A4E4/window/size] with no body
[WD Proxy] Got response with status 200: {
[WD Proxy] "value" : {
[WD Proxy] "width" : 834,
[WD Proxy] "height" : 1194
[WD Proxy] },
[WD Proxy] "sessionId" : "0492F569-03A0-4A11-80A5-D3B54CB8A4E4"
[WD Proxy] }
[XCUITest] Taking screenshot with WDA
[WD Proxy] Matched '/screenshot' to command name 'getScreenshot'
[WD Proxy] Proxying [GET /screenshot] to [GET http://localhost:8100/session/0492F569-03A0-4A11-80A5-D3B54CB8A4E4/screenshot] with no body
[MJSONWP (1917d018)] Responding to client with driver.getWindowSize() result: {"width":834,"height":1194}
[HTTP] <-- GET /wd/hub/session/1917d018-eecd-4e0c-838e-aa69b67f7b64/window/current/size 200 598 ms - 99
[HTTP]
[WD Proxy] Got response with status 200: {
[WD Proxy] "value" : "iVBORw0KGgoAAAANSUhEUgAABoQAAAlUCAIAAACxNYdPAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAGhKADAAQAAAABAAAJVAAAAABugBdsAAAAHGlET1QAAAACAAAAAAAA\r\nBKoAAAAoAAAEqgAABKoAJMuYpl\/QvgAAQABJREFUeAHsnYd7W8eZ7ke9WZ2qlmRJ\r\nVu+NFSB6YwWI3jtIkOqy45LEJS6pa2+KnWTTNonjNDtxYlu2KiuI3kjJe\/fPue93\r\nBqDoZHMjekPv7t3xM4EOgYM5c96ZOXm+H77CFCXPvLb2sotayfP3m3SmvOyd1Tzy\r\ncu2LipILTVVyoKmL1DRFG5qq6JGaS1WsfaooOWYavzQ6kfr0y8t+RdGL1l6iNutC\r\nOJ59LdKk3jM\/nz5trbrQ2qoOecXRXqaR4KLqequfTyPho63dO7+viktekaQo49MH\r\n\/c9VfD5mPn5+L5\/q4a\/ujo+KjwTD5iMnJTHsgkdd8KrwlRLdHe6rtQrp5rYe8HWp\r\nB7plaIImiS9NB00Nfcqv3la1oX1acz4RD9SonS\/NTlvFizbX8cz1fF3epSlgtLTM\r\nMDZcsVVqOJCGSu\/z2eSLqmna0TzlasNUlmhhqAp+3vjynpliWo3SwpjreMT5QgGh\r\ngFBAKCAUEAoIBYQCQgGhgFBAKPB5KVAzYCWjz1NnBf72EjUAhFmNLERug3Or9tOW\r\no\/TRA4xQ4wnzfReavBetbvWTPQ7rm18Uxr664Nfk\/ZqCB41TlE8zBA4uHvCTuuUr\r\nMQGJLWgKYC9k287Yy20ViZzQVWoERjJ+ObepMZaH5xWQV5JaMq5rbIGuzhXmr3wu\r\nFMUgWp26zOCav3Pw1\/rzsc1+nTXF\/r8+f\/7eYfPXN...
[WD Proxy] Matched '/source' to command name 'getPageSource'
[WD Proxy] Proxying [GET /source] to [GET http://localhost:8100/session/0492F569-03A0-4A11-80A5-D3B54CB8A4E4/source] with no body
[MJSONWP (1917d018)] Responding to client with driver.getScreenshot() result: "iVBORw0KGgoAAAANSUhEUgAABoQAAAlUCAIAAACxNYdPAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAGhKADAAQAAAABAAAJVAAAAABugBdsAAAAHGlET1QAAAACAAAAAAAA\r\nBKoAAAAoAAAEqgAABKoAJMuYpl/QvgAAQABJREFUeAHsnYd7W8eZ7ke9WZ2qlmRJ\r\nVu+NFSB6YwWI3jtIkOqy45LEJS6pa2+KnWTTNonjNDtxYlu2KiuI3kjJe/fPue93\r\nBqDoZHMjekPv7t3xM4EOgYM5c96ZOXm+H77CFCXPvLb2sotayfP3m3SmvOyd1Tzy\r\ncu2LipILTVVyoKmL1DRFG5qq6JGaS1WsfaooOWYavzQ6kfr0y8t+RdGL1l6iNutC\r\nOJ59LdKk3jM/nz5trbrQ2qoOecXRXqaR4KLqequfTyPho63dO7+viktekaQo49MH\r\n/c9VfD5mPn5+L5/q4a/ujo+KjwTD5iMnJTHsgkdd8KrwlRLdHe6rtQrp5rYe8HWp\r\nB7plaIImiS9NB00Nfcqv3la1oX1acz4RD9SonS/NTlvFizbX8cz1fF3epSlgtLTM\r\nMDZcsVVqOJCGSu/z2eSLqmna0TzlasNUlmhhqAp+3vjynpliWo3SwpjreMT5QgGh\r\ngFBAKCAUEAoIBYQCQgGhgFBAKPB5KVAzYCWjz1NnBf72EjUAhFmNLERug3Or9tOW\r\no/TRA4xQ4wnzfReavBetbvWTPQ7rm18Uxr664Nfk/ZqCB41TlE8zBA4uHvCTuuUr\r\nMQGJLWgKYC9k287Yy20ViZzQVWoERjJ+ObepMZaH5xWQV5JaMq5rbIGuzhXmr3wu\r\nFMUgWp26zOCav3Pw1/rzsc1+nTXF/r8+f/7eYfPXNe+ZQEydxP2ta82cIB3USJmk\r\n...
[HTTP] <-- GET /wd/hub/session/1917d018-eecd-4e0c-838e-aa69b67f7b64/screenshot 200 1006 ms - 5651314
[HTTP]
[WD Proxy] Got response with status 500: {
[WD Proxy] "value" : {
[WD Proxy] "error" : "unknown error",
[WD Proxy] "message" : "Cannot get 'xml' source of the current application",
[WD Proxy] "traceback" : ""
[WD Proxy] },
[WD Proxy] "sessionId" : "0492F569-03A0-4A11-80A5-D3B54CB8A4E4"
[WD Proxy] }
[W3C] Matched W3C error code 'unknown error' to UnknownError
[MJSONWP (1917d018)] Encountered internal error running command: UnknownError: An unknown server-side error occurred while processing the command. Original error: Cannot get 'xml' source of the current application
[MJSONWP (1917d018)] at errorFromW3CJsonCode (/Applications/Appium.app/Contents/Resources/app/node_modules/appium-xcuitest-driver/node_modules/appium-base-driver/lib/protocol/errors.js:780:25)
[MJSONWP (1917d018)] at ProxyRequestError.errorFromW3CJsonCode [as getActualError] (/Applications/Appium.app/Contents/Resources/app/node_modules/appium-xcuitest-driver/node_modules/appium-base-driver/lib/protocol/errors.js:663:14)
[MJSONWP (1917d018)] at JWProxy.getActualError [as command] (/Applications/Appium.app/Contents/Resources/app/node_modules/appium-xcuitest-driver/node_modules/appium-base-driver/lib/jsonwp-proxy/proxy.js:259:19)
[HTTP] <-- GET /wd/hub/session/1917d018-eecd-4e0c-838e-aa69b67f7b64/source 500 31365 ms - 221
We have experienced similar issues with 4.4:
Hi everyone! Would you mind testing with the attached nuget to see if it improves or worsens the situation? Thanks!
Xamarin.Forms.4.4.0.993247.nupkg.zip
Thanks, @samhouts! We will give this a shot ASAP and get back to you.
I am a co-worker of Aubbles01 and noah-mckenzie.
The Xamarin.Forms.4.4.0.993247.nupkg actually made things worse. Our login screen is a Auth0 webview and now we are unable to manually enter information in the screen from the simulator. Here is a partial view of our Appium logs where things go bad:
[HTTP]
[WD Proxy] Got response with status 200: {
[WD Proxy] "value" : "\n\n \n \n \n \n
[XCUITest] Taking screenshot with WDA
[WD Proxy] Matched '/screenshot' to command name 'getScreenshot'
[WD Proxy] Proxying [GET /screenshot] to [GET http://localhost:8100/session/E9572A3A-1938-49BE-8AD8-843877C8E52E/screenshot] with no body
[MJSONWP (2a9645c6)] Responding to client with driver.getPageSource() result: "\n \n \n \n \n
[HTTP] <-- GET /wd/hub/session/2a9645c6-398f-43aa-8e70-1207ec9849b2/source 200 1472 ms - 6917
[HTTP]
[WD Proxy] Got response with status 200: {
[WD Proxy] "value" : "iVBORw0KGgoAAAANSUhEUgAABgAAAAgACAIAAABvs29hAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAGAKADAAQAAAABAAAIAAAAAAChy0HlAAAAHGlET1QAAAACAAAAAAAA\r\nBAAAAAAoAAAEAAAABAAAB4w1ZhWHngAAQABJREFUeAHsvYdy48iWrQ15L9F7whOg\r\nly3vjQxFb6Sqnjvv\/xz\/tzNBlrq6q\/\/uiZlz5t5ARwYOCwQSmSsTPLGX1l7bKMzc\r\nVStOfVpBtezcp+Vn8k9OVsbSzJGfWrgZ1fIztzyRM9YwsIeBOQoq44CLuUtfkFnY\r\n2bldmAb5WZBRvRVmdmViV8ZyI2dSC85zS8A\/6Zxv83O+9fnn7\/txV8\/icTSuYUiM\r\njWdxsWr0GU2Ei2l6UsWpq5pdnNr0T9Pj1BczPAaZerD1pNR8g+IkoHMZEkOd2MkH\r\nmS+dcAvdZuduauFnZ0F5HFRGIUeGwe2pByu7KBfmRTU7uVI37jLHrj2UI5\/V7Vws\r\nyDAk+i9PrbIam54OgNA5iHG7HjnfciNtNRcBZxZmZq3srMGVxZlVnpVpfOCfnNRf\r\ngQCPANIlFD6jXTV9Un0rF2gY1QrKikS3zCzp\/McIGb9gTlO7QmEyDQvSFCBjmSar\r\nIwsEjJMgPw2lqRnpPhXIsnaArHHW81ohxgeu1Cdl4qCkAKTP48eAxlDZA3q36PEv\r\ne9BbIkJ+1cnquTxa70M9fjUF+pFJJR\/8xEOQmstogUhtEpmLNbbsEU3GwDZIPLIx\r\nZNa6Tz1m\/Xm5OjLy5RNlufXn+BgjECMQIxAjECMQIxAjECMQIxAjECPwr0egMrFo\r\nKqazdESsoxhClVUjqloGhsSeEgvr6EZfT+iqA2diZ4n...
[MJSONWP (2a9645c6)] Responding to client with driver.getScreenshot() result: "iVBORw0KGgoAAAANSUhEUgAABgAAAAgACAIAAABvs29hAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAGAKADAAQAAAABAAAIAAAAAAChy0HlAAAAHGlET1QAAAACAAAAAAAA\r\nBAAAAAAoAAAEAAAABAAAB4w1ZhWHngAAQABJREFUeAHsvYdy48iWrQ15L9F7whOg\r\nly3vjQxFb6Sqnjvv/xz/tzNBlrq6q//uiZlz5t5ARwYOCwQSmSsTPLGX1l7bKMzc\r\nVStOfVpBtezcp+Vn8k9OVsbSzJGfWrgZ1fIztzyRM9YwsIeBOQoq44CLuUtfkFnY\r\n2bldmAb5WZBRvRVmdmViV8ZyI2dSC85zS8A/6Zxv83O+9fnn7/txV8/icTSuYUiM\r\njWdxsWr0GU2Ei2l6UsWpq5pdnNr0T9Pj1BczPAaZerD1pNR8g+IkoHMZEkOd2MkH\r\nmS+dcAvdZuduauFnZ0F5HFRGIUeGwe2pByu7KBfmRTU7uVI37jLHrj2UI5/V7Vws\r\nyDAk+i9PrbIam54OgNA5iHG7HjnfciNtNRcBZxZmZq3srMGVxZlVnpVpfOCfnNRf\r\ngQCPANIlFD6jXTV9Un0rF2gY1QrKikS3zCzp/McIGb9gTlO7QmEyDQvSFCBjmSar\r\nIwsEjJMgPw2lqRnpPhXIsnaArHHW81ohxgeu1Cdl4qCkAKTP48eAxlDZA3q36PEv\r\ne9BbIkJ+1cnquTxa70M9fjUF+pFJJR/8xEOQmstogUhtEpmLNbbsEU3GwDZIPLIx\r\nZNa6Tz1m/Xm5OjLy5RNlufXn+BgjECMQIxAjECMQIxAjECMQIxAjECPwr0egMrFo\r\nKqazdESsoxhClVUjqloGhsSeEgvr6EZfT+iqA2diZ4n0VVRF3JqZhzQd1i3nJRF3\r\n...
[HTTP] <-- GET /wd/hub/session/2a9645c6-398f-43aa-8e70-1207ec9849b2/screenshot 200 1796 ms - 1631798
[HTTP]
[Xcode] 2020-02-26 12:05:25.522310-0700 WebDriverAgentRunner-Runner[65646:10120882] Internal error: Error Domain=com.apple.dt.xctest.automation-support.error Code=5 "Error kAXErrorIPCTimeout getting snapshot for element {pid=65661} {uid=[ID:9999 hash:0xaf7b328250000000]}" UserInfo={NSLocalizedDescription=Error kAXErrorIPCTimeout getting snapshot for element {pid=65661} {uid=[ID:9999 hash:0xaf7b328250000000]}}
[Xcode]
[Xcode] t = 182.89s Requesting snapshot of accessibility hierarchy for app with pid 65647
[Xcode]
[Xcode] t = 188.14s Requesting snapshot of accessibility hierarchy for app with pid 65647
[Xcode]
[Xcode] t = 193.41s Get all elements bound by accessibility element for: Elements matching predicate 'wdUID IN {"2C000000-0000-0000-6F00-010000000000", "2D000000-0000-0000-6F00-010000000000", "2E000000-0000-0000-6F00-010000000000"} AND (1 == 1 OR identifier == 0 OR frame == 0 OR value == 0 OR title == 0 OR label == 0 OR elementType == 0 OR enabled == 0 OR placeholderValue == 0)'
[Xcode]
[Xcode] t = 193.41s Requesting snapshot of accessibility hierarchy for app with pid 65647
[Xcode]
[Xcode] t = 198.66s Find: Descendants matching type Window
[Xcode]
[Xcode] t = 198.66s Find: Elements matching predicate 'wdUID IN {"2C000000-0000-0000-6F00-010000000000", "2D000000-0000-0000-6F00-010000000000", "2E000000-0000-0000-6F00-010000000000"} AND (1 == 1 OR identifier == 0 OR frame == 0 OR value == 0 OR title == 0 OR label == 0 OR elementType == 0 OR enabled == 0 OR placeholderValue == 0)'
[Xcode]
[Xcode] t = 198.67s Checking existence of Window
[Xcode]
[Xcode] t = 198.67s Requesting snapshot of accessibility hierarchy for app with pid 65647
[Xcode]
[Xcode] t = 203.90s Find: Descendants matching type Window
[Xcode]
[Xcode] t = 203.90s Find: Elements matching predicate 'wdUID IN {"2C000000-0000-0000-6F00-010000000000", "2D000000-0000-0000-6F00-010000000000", "2E000000-0000-0000-6F00-010000000000"} AND (1 == 1 OR identifier == 0 OR frame == 0 OR value == 0 OR title == 0 OR label == 0 OR elementType == 0 OR enabled == 0 OR placeholderValue == 0)'
[Xcode]
[Xcode] t = 203.90s Find: Identity Binding
[Xcode]
[Xcode] t = 203.90s Requesting snapshot of accessibility hierarchy for app with pid 65647
[Xcode]
[Xcode] t = 209.16s Find: Descendants matching type Window
[Xcode]
@luke-schneider Ok! Let me see what happened to WebViews....
Are you able to bypass that to see if it improved/worsened other controls?
And just to confirm that it was changes from #9702 that caused the webview to fail, can you also try https://www.nuget.org/packages/Xamarin.Forms/4.4.0.991757? Thank you so much!
Bad me. I rebooted and was able to login with both builds. Problem still exists that after login, it loses connection with Appium (on both builds).
My steps are: 1) Start Appium. 2) Use the Simulator to get me past the login screen. 3) Click "Refresh Source & Screenshot". Here are the relevant logs:
[HTTP]
[WD Proxy] Got response with status 500: {
[WD Proxy] "value" : {
[WD Proxy] "error" : "unknown error",
[WD Proxy] "message" : "Cannot get 'xml' source of the current application",
[WD Proxy] "traceback" : ""
[WD Proxy] },
[WD Proxy] "sessionId" : "F3F3B5BE-F2D1-4F02-B332-76ECE4C8E8F2"
[WD Proxy] }
[W3C] Matched W3C error code 'unknown error' to UnknownError
[MJSONWP (abfca999)] Encountered internal error running command: UnknownError: An unknown server-side error occurred while processing the command. Original error: Cannot get 'xml' source of the current application
[MJSONWP (abfca999)] at errorFromW3CJsonCode (/Applications/Appium.app/Contents/Resources/app/node_modules/appium-xcuitest-driver/node_modules/appium-base-driver/lib/protocol/errors.js:780:25)
[MJSONWP (abfca999)] at ProxyRequestError.errorFromW3CJsonCode [as getActualError] (/Applications/Appium.app/Contents/Resources/app/node_modules/appium-xcuitest-driver/node_modules/appium-base-driver/lib/protocol/errors.js:663:14)
[MJSONWP (abfca999)] at JWProxy.getActualError [as command] (/Applications/Appium.app/Contents/Resources/app/node_modules/appium-xcuitest-driver/node_modules/appium-base-driver/lib/jsonwp-proxy/proxy.js:259:19)
[HTTP] <-- GET /wd/hub/session/abfca999-fcc9-48d9-a5fa-5dc1f208a6cd/source 500 42026 ms - 221
[HTTP]
@luke-schneider and it _definitely_ works properly on 3.6, right? I'm trying to rule out Xcode, Catalina, and iOS 13 sims as culprits...
it definitely worked properly on 3.6. I am not on Catalina yet, don't think I can help with Xcode or iOS 13. I am using 13.3.
I will try and take our code back to 3.6 commenting out new stuff and see if it works.
I went back to a 3.6 build and it works fine with same OS, Xcode, and iOS 13.3. Did a checkout of next checkin which was the change to 4.4.0.991265 and it fails. Here are some of the logs where it worked on 3.6:
[HTTP]
[HTTP] --> GET /wd/hub/session/67d1c8f8-e9e0-422e-9c6a-bed01ed17b41/window/current/size
[HTTP] {}
[MJSONWP (67d1c8f8)] Calling AppiumDriver.getWindowSize() with args: ["current","67d1c8f8-e9e0-422e-9c6a-bed01ed17b41"]
[XCUITest] Executing command 'getWindowSize'
[HTTP] --> GET /wd/hub/session/67d1c8f8-e9e0-422e-9c6a-bed01ed17b41/screenshot
[HTTP] {}
[MJSONWP (67d1c8f8)] Calling AppiumDriver.getScreenshot() with args: ["67d1c8f8-e9e0-422e-9c6a-bed01ed17b41"]
[XCUITest] Executing command 'getScreenshot'
[HTTP] --> GET /wd/hub/session/67d1c8f8-e9e0-422e-9c6a-bed01ed17b41/source
[HTTP] {}
[MJSONWP (67d1c8f8)] Calling AppiumDriver.getPageSource() with args: ["67d1c8f8-e9e0-422e-9c6a-bed01ed17b41"]
[XCUITest] Executing command 'getPageSource'
[WD Proxy] Proxying [GET /window/size] to [GET http://localhost:8100/session/0E3FCC5B-E537-47AF-8E27-9D536415DF78/window/size] with no body
[WD Proxy] Got response with status 200: {
[WD Proxy] "value" : {
[WD Proxy] "width" : 768,
[WD Proxy] "height" : 1024
[WD Proxy] },
[WD Proxy] "sessionId" : "0E3FCC5B-E537-47AF-8E27-9D536415DF78"
[WD Proxy] }
[XCUITest] Taking screenshot with WDA
[WD Proxy] Matched '/screenshot' to command name 'getScreenshot'
[WD Proxy] Proxying [GET /screenshot] to [GET http://localhost:8100/session/0E3FCC5B-E537-47AF-8E27-9D536415DF78/screenshot] with no body
[MJSONWP (67d1c8f8)] Responding to client with driver.getWindowSize() result: {"width":768,"height":1024}
[HTTP] <-- GET /wd/hub/session/67d1c8f8-e9e0-422e-9c6a-bed01ed17b41/window/current/size 200 98 ms - 99
[HTTP]
[WD Proxy] Got response with status 200: {
[WD Proxy] "value" : "iVBORw0KGgoAAAANSUhEUgAABgAAAAgACAIAAABvs29hAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAGAKADAAQAAAABAAAIAAAAAAChy0HlAAAAHGlET1QAAAACAAAAAAAA\r\nBAAAAAAoAAAEAAAABAAAB5dXbJ9McAAAQABJREFUeAHsnQdzG0myrYse9PC+PYCG\r\npxFlZ+QlGngQJDV77\/v\/v+N9WQVAkDTSiht3976I1xsVvc3u6jJZ2T06ByezVP7W\r\nf2Rx87cUh5KbuZT0nZ+eVRL3leRdjZK5rdFgaeLbY8cZO5mZn7uVUphK4TqFE+pw\r\nUZ6985O6mPP0TFrgKT0qtzClSP3cbYWSmZmi25zJGOia67o7evTLY58hZXThhOtc\r\n4UhrZpBmMIujPJu7rS1LflqRsmKTzB3TlJlyUY9kfpcr0tEdE5QTeWRaKXz77Go7\r\nPzv3RxZWoguMkLjHFDJB2tETl\/bTdHEnMy1NXXssfTF4PRipVppUmKCUiUMpTaWa\r\nlEmlMKkVJmF+VsrPrMKtw+BL41ppHJZHUqggdcS8ZkHnx\/LEpTUsaY8q9qhW5pGJ\r\n2EQmO3OT9w4lfce5r1dWLM9gsC1Ljxnp0TzCXapR8BazCmb5tK3kollWsdii6FnL\r\nqMwUtJtR03jC7x9N4zIv046xzIp9HLGGdmCs6g7FeliegmHNULmyGJ5cZGlwTq5g\r\nluX13zzJ3Ib5qdjEGdacEYsl\/qONIy3TCH0ZCxv\/XG32Z3NfraMX0bgxqzl\/uTgx\r\nTkILnJt2xHNw1IW1tbvK3YWVXJaec+0PeoSypnhRSNGeI54g66Xf3Hn72ufNXaZJ\r\n4fp35WeziK5HFogsEFkgskBkgcgCkQUiC0QWiCzw77bAKg4...
[WD Proxy] Matched '/source' to command name 'getPageSource'
[WD Proxy] Proxying [GET /source] to [GET http://localhost:8100/session/0E3FCC5B-E537-47AF-8E27-9D536415DF78/source] with no body
[MJSONWP (67d1c8f8)] Responding to client with driver.getScreenshot() result: "iVBORw0KGgoAAAANSUhEUgAABgAAAAgACAIAAABvs29hAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAGAKADAAQAAAABAAAIAAAAAAChy0HlAAAAHGlET1QAAAACAAAAAAAA\r\nBAAAAAAoAAAEAAAABAAAB5dXbJ9McAAAQABJREFUeAHsnQdzG0myrYse9PC+PYCG\r\npxFlZ+QlGngQJDV77/v/v+N9WQVAkDTSiht3976I1xsVvc3u6jJZ2T06ByezVP7W\r\nf2Rx87cUh5KbuZT0nZ+eVRL3leRdjZK5rdFgaeLbY8cZO5mZn7uVUphK4TqFE+pw\r\nUZ6985O6mPP0TFrgKT0qtzClSP3cbYWSmZmi25zJGOia67o7evTLY58hZXThhOtc\r\n4UhrZpBmMIujPJu7rS1LflqRsmKTzB3TlJlyUY9kfpcr0tEdE5QTeWRaKXz77Go7\r\nPzv3RxZWoguMkLjHFDJB2tETl/bTdHEnMy1NXXssfTF4PRipVppUmKCUiUMpTaWa\r\nlEmlMKkVJmF+VsrPrMKtw+BL41ppHJZHUqggdcS8ZkHnx/LEpTUsaY8q9qhW5pGJ\r\n2EQmO3OT9w4lfce5r1dWLM9gsC1Ljxnp0TzCXapR8BazCmb5tK3kollWsdii6FnL\r\nqMwUtJtR03jC7x9N4zIv046xzIp9HLGGdmCs6g7FeliegmHNULmyGJ5cZGlwTq5g\r\nluX13zzJ3Ib5qdjEGdacEYsl/qONIy3TCH0ZCxv/XG32Z3NfraMX0bgxqzl/uTgx\r\nTkILnJt2xHNw1IW1tbvK3YWVXJaec+0PeoSypnhRSNGeI54g66Xf3Hn72ufNXaZJ\r\n4fp35WeziK5HFogsEFkgskBkgcgCkQUiC0QWiCzw77bAKg4yCMv8c90AOnOcIwWB\r\n...
[HTTP] <-- GET /wd/hub/session/67d1c8f8-e9e0-422e-9c6a-bed01ed17b41/screenshot 200 309 ms - 1635186
[HTTP]
[WD Proxy] Got response with status 200: {
[WD Proxy] "value" : "\n\n \n \n \n \n
[MJSONWP (67d1c8f8)] Responding to client with driver.getPageSource() result: "\n \n \n \n \n
[HTTP] <-- GET /wd/hub/session/67d1c8f8-e9e0-422e-9c6a-bed01ed17b41/source 200 1369 ms - 6917
[HTTP]
[HTTP] --> GET /wd/hub/session/67d1c8f8-e9e0-422e-9c6a-bed01ed17b41/source
[HTTP] {}
[MJSONWP (67d1c8f8)] Calling AppiumDriver.getPageSource() with args: ["67d1c8f8-e9e0-422e-9c6a-bed01ed17b41"]
[XCUITest] Executing command 'getPageSource'
[WD Proxy] Matched '/source' to command name 'getPageSource'
[WD Proxy] Proxying [GET /source] to [GET http://localhost:8100/session/0E3FCC5B-E537-47AF-8E27-9D536415DF78/source] with no body
[HTTP] --> GET /wd/hub/session/67d1c8f8-e9e0-422e-9c6a-bed01ed17b41/screenshot
[HTTP] {}
[MJSONWP (67d1c8f8)] Calling AppiumDriver.getScreenshot() with args: ["67d1c8f8-e9e0-422e-9c6a-bed01ed17b41"]
[XCUITest] Executing command 'getScreenshot'
[HTTP] --> GET /wd/hub/session/67d1c8f8-e9e0-422e-9c6a-bed01ed17b41/window/current/size
[HTTP] {}
[MJSONWP (67d1c8f8)] Calling AppiumDriver.getWindowSize() with args: ["current","67d1c8f8-e9e0-422e-9c6a-bed01ed17b41"]
[XCUITest] Executing command 'getWindowSize'
[WD Proxy] Got response with status 200: {
[WD Proxy] "value" : "\n\n \n \n \n \n \n
[XCUITest] Taking screenshot with WDA
[WD Proxy] Matched '/screenshot' to command name 'getScreenshot'
[WD Proxy] Proxying [GET /screenshot] to [GET http://localhost:8100/session/0E3FCC5B-E537-47AF-8E27-9D536415DF78/screenshot] with no body
[MJSONWP (67d1c8f8)] Responding to client with driver.getPageSource() result: "\n \n \n \n \n \n
[HTTP] <-- GET /wd/hub/session/67d1c8f8-e9e0-422e-9c6a-bed01ed17b41/source 200 4522 ms - 34250
[HTTP]
[WD Proxy] Got response with status 200: {
[WD Proxy] "value" : "iVBORw0KGgoAAAANSUhEUgAABgAAAAgACAIAAABvs29hAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAGAKADAAQAAAABAAAIAAAAAAChy0HlAAAAHGlET1QAAAACAAAAAAAA\r\nBAAAAAAoAAAEAAAABAAAHkEX3tb3hgAAQABJREFUeAHsvfef29WV\/39dMAaDARsX\r\nbGODjcG44ja9SiNpepFGGnVppGmeGdtgatoSCJC2STZlk02yu9n0uh8SCMV1+qhr\r\nis3ud\/+b7\/Pcq5k4dfH+mjePix6at9665dxzr\/V6vV\/nXFVXCNxRqS0E6\/KUcGMu\r\nbMtGmzKUMMWWCzTmAg35AJ9yT20+WpuP1+YTDflgYy5oy0opfVTsa8j3ObLe5jSl\r\nz5HhK+GaQryymKgsJusKfZTaQoBStRCkVC72UaoWvTUL3rqCtzHfR0O2LK1LBxp1\r\noRWabih464qemgUKdwYacuG6fLQhF5Wu8pW825bvltvopB61aaWmGPiTUlvso5ie\r\n8Mr9TVkKQ5BRMxwZUa6PntAfXeQeesX1lW9JE6Yt3Te6Z4q5KBagt9JhxpsPMnws\r\n1pj3NBTcDLZ8MVizoI2Qj\/IpPZfrC+Gzi4mqYpg7G7JJRzranG135Nu5Xr4Qp2k6\r\nqY0c5c+yhQSvlcU43aMVW44ig6opBnXB4NGaYhjzYgQGYoZDr2hOxlJw0xmGoOcx\r\n0ZCLM01MlisTcGTCjdlEY5YWA1TbmBmkM\/SKDjcUO5vy7c0ZN7fZMvG6HNejVQsB\r\nZoR5kVaywdqi15iXdo2J6DaVu9L0P8iU0T093Z7axc6GYruZqY\/\/SjeYzcpFcZ7a\r\nAg4Qps7Vwp9cZOC6aB8rhisXgmdvesqXvPgS3Rav0C6K...
[WD Proxy] Proxying [GET /window/size] to [GET http://localhost:8100/session/0E3FCC5B-E537-47AF-8E27-9D536415DF78/window/size] with no body
[MJSONWP (67d1c8f8)] Responding to client with driver.getScreenshot() result: "iVBORw0KGgoAAAANSUhEUgAABgAAAAgACAIAAABvs29hAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAGAKADAAQAAAABAAAIAAAAAAChy0HlAAAAHGlET1QAAAACAAAAAAAA\r\nBAAAAAAoAAAEAAAABAAAHkEX3tb3hgAAQABJREFUeAHsvfef29WV/39dMAaDARsX\r\nbGODjcG44ja9SiNpepFGGnVppGmeGdtgatoSCJC2STZlk02yu9n0uh8SCMV1+qhr\r\nis3ud/+b7/Pcq5k4dfH+mjePix6at9665dxzr/V6vV/nXFVXCNxRqS0E6/KUcGMu\r\nbMtGmzKUMMWWCzTmAg35AJ9yT20+WpuP1+YTDflgYy5oy0opfVTsa8j3ObLe5jSl\r\nz5HhK+GaQryymKgsJusKfZTaQoBStRCkVC72UaoWvTUL3rqCtzHfR0O2LK1LBxp1\r\noRWabih464qemgUKdwYacuG6fLQhF5Wu8pW825bvltvopB61aaWmGPiTUlvso5ie\r\n8Mr9TVkKQ5BRMxwZUa6PntAfXeQeesX1lW9JE6Yt3Te6Z4q5KBagt9JhxpsPMnws\r\n1pj3NBTcDLZ8MVizoI2Qj/IpPZfrC+Gzi4mqYpg7G7JJRzranG135Nu5Xr4Qp2k6\r\nqY0c5c+yhQSvlcU43aMVW44ig6opBnXB4NGaYhjzYgQGYoZDr2hOxlJw0xmGoOcx\r\n0ZCLM01MlisTcGTCjdlEY5YWA1TbmBmkM/SKDjcUO5vy7c0ZN7fZMvG6HNejVQsB\r\nZoR5kVaywdqi15iXdo2J6DaVu9L0P8iU0T093Z7axc6GYruZqY//SjeYzcpFcZ7a\r\nAg4Qps7Vwp9cZOC6aB8rhisXgmdvesqXvPgS3Rav0C6KSfW8xDGOIyudx99Mt03P\r\n...
[HTTP] <-- GET /wd/hub/session/67d1c8f8-e9e0-422e-9c6a-bed01ed17b41/screenshot 200 4913 ms - 4897390
[HTTP]
[WD Proxy] Got response with status 200: {
[WD Proxy] "value" : {
[WD Proxy] "width" : 768,
[WD Proxy] "height" : 1024
[WD Proxy] },
[WD Proxy] "sessionId" : "0E3FCC5B-E537-47AF-8E27-9D536415DF78"
[WD Proxy] }
[MJSONWP (67d1c8f8)] Responding to client with driver.getWindowSize() result: {"width":768,"height":1024}
[HTTP] <-- GET /wd/hub/session/67d1c8f8-e9e0-422e-9c6a-bed01ed17b41/window/current/size 200 5537 ms - 99
[HTTP]
VS. same logs where it didn't work with 4.4:
[HTTP] {}
[MJSONWP (62f6c08d)] Calling AppiumDriver.getWindowSize() with args: ["current","62f6c08d-9669-4a58-8b1e-5ce63226b471"]
[XCUITest] Executing command 'getWindowSize'
[WD Proxy] Matched '/source' to command name 'getPageSource'
[WD Proxy] Proxying [GET /source] to [GET http://localhost:8100/session/CAAC0A4B-1CC3-4169-AA88-891AE51A2F93/source] with no body
[WD Proxy] Got response with status 200: {
[WD Proxy] "value" : "\n\n \n \n \n \n
[XCUITest] Taking screenshot with WDA
[WD Proxy] Matched '/screenshot' to command name 'getScreenshot'
[WD Proxy] Proxying [GET /screenshot] to [GET http://localhost:8100/session/CAAC0A4B-1CC3-4169-AA88-891AE51A2F93/screenshot] with no body
[MJSONWP (62f6c08d)] Responding to client with driver.getPageSource() result: "\n \n \n \n \n
[HTTP] <-- GET /wd/hub/session/62f6c08d-9669-4a58-8b1e-5ce63226b471/source 200 935 ms - 6917
[HTTP]
[WD Proxy] Got response with status 200: {
[WD Proxy] "value" : "iVBORw0KGgoAAAANSUhEUgAABgAAAAgACAIAAABvs29hAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAGAKADAAQAAAABAAAIAAAAAAChy0HlAAAAHGlET1QAAAACAAAAAAAA\r\nBAAAAAAoAAAEAAAABAAAB5bgIIFbHgAAQABJREFUeAHsvYeW20iyrZ3lfdF7Epbe\r\nlZXtlpfK0JNVLKnPve\/\/HP8XmSBFuR5VnzNzz1o\/euXCoIBEmsgARntzR6TKzrxH\r\nFic7o9iUzJ1DSd57ybtybF6O31cpqVmVBgsTzxrb9thO3XmZmZTcVArXKZxQh4vy\r\n7L0X18WcJ++kBZ7So3JyU4rUz8zKlNSdKbrNOxkDXXNdd0ePXnHsMaSULpxwnSsc\r\nac0M0gxmcZRnM7PqsmSnZSkrNkndM02ZKRf1SIK7XJGO7pmgnMgj03Lu22dX2\/nV\r\nefy+zMB4tjApF8dlayQntGMmi02MAemaiTDBYIR6nHrwUtOMmWku52umrMesR2Xm\r\n9e1TwYN62PRoCr3rkZjuHGvsFPQSYDGMz2h1MQtnM\/3YHAeQ6ZvxF8bV7LSWmdaY\r\nlF5EHrdpgfGIcaasrJjLTGc5X54N5hVYngYpsr6\/stuvr8uz2m1k5JTixF4WPRg7\r\nN5Ni2neGMtPYXApzNAbkil5r43jinywEV7D\/8vpvnqRmNQxSHFftYdUeyRIzcixD\r\ng3RHI9o\/ZfrGP1eb\/dUcV+tgOuMtrCbXtZ2DYZvHuWhOjMeu+o9pZ2ElDGXWWlZT\r\nRqiXOzepUVhWKbov7prXR5rVbmPuMk1Z+sXd5YnpPTyGFggtEFogtEBogdACoQVC\r\nC4QWCC3wn7eAgUIGB2mQ5Zh\/qPMP\/mUJkIJAMICbAaS...
[WD Proxy] Proxying [GET /window/size] to [GET http://localhost:8100/session/CAAC0A4B-1CC3-4169-AA88-891AE51A2F93/window/size] with no body
[MJSONWP (62f6c08d)] Responding to client with driver.getScreenshot() result: "iVBORw0KGgoAAAANSUhEUgAABgAAAAgACAIAAABvs29hAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAGAKADAAQAAAABAAAIAAAAAAChy0HlAAAAHGlET1QAAAACAAAAAAAA\r\nBAAAAAAoAAAEAAAABAAAB5bgIIFbHgAAQABJREFUeAHsvYeW20iyrZ3lfdF7Epbe\r\nlZXtlpfK0JNVLKnPve//HP8XmSBFuR5VnzNzz1o/euXCoIBEmsgARntzR6TKzrxH\r\nFic7o9iUzJ1DSd57ybtybF6O31cpqVmVBgsTzxrb9thO3XmZmZTcVArXKZxQh4vy\r\n7L0X18WcJ++kBZ7So3JyU4rUz8zKlNSdKbrNOxkDXXNdd0ePXnHsMaSULpxwnSsc\r\nac0M0gxmcZRnM7PqsmSnZSkrNkndM02ZKRf1SIK7XJGO7pmgnMgj03Lu22dX2/nV\r\nefy+zMB4tjApF8dlayQntGMmi02MAemaiTDBYIR6nHrwUtOMmWku52umrMesR2Xm\r\n9e1TwYN62PRoCr3rkZjuHGvsFPQSYDGMz2h1MQtnM/3YHAeQ6ZvxF8bV7LSWmdaY\r\nlF5EHrdpgfGIcaasrJjLTGc5X54N5hVYngYpsr6/stuvr8uz2m1k5JTixF4WPRg7\r\nN5Ni2neGMtPYXApzNAbkil5r43jinywEV7D/8vpvnqRmNQxSHFftYdUeyRIzcixD\r\ng3RHI9o/ZfrGP1eb/dUcV+tgOuMtrCbXtZ2DYZvHuWhOjMeu+o9pZ2ElDGXWWlZT\r\nRqiXOzepUVhWKbov7prXR5rVbmPuMk1Z+sXd5YnpPTyGFggtEFogtEBogdACoQVC\r\nC4QWCC3wn7eAgUIGB2mQ5Zh/qPMP/mUJkIJAMICbAaSCKUx9A64BfboITNClmrwD\r\n...
[HTTP] <-- GET /wd/hub/session/62f6c08d-9669-4a58-8b1e-5ce63226b471/screenshot 200 1134 ms - 1635466
[HTTP]
[WD Proxy] Got response with status 200: {
[WD Proxy] "value" : {
[WD Proxy] "width" : 768,
[WD Proxy] "height" : 1024
[WD Proxy] },
[WD Proxy] "sessionId" : "CAAC0A4B-1CC3-4169-AA88-891AE51A2F93"
[WD Proxy] }
[MJSONWP (62f6c08d)] Responding to client with driver.getWindowSize() result: {"width":768,"height":1024}
[HTTP] <-- GET /wd/hub/session/62f6c08d-9669-4a58-8b1e-5ce63226b471/window/current/size 200 1348 ms - 99
[HTTP]
[HTTP] --> GET /wd/hub/session/62f6c08d-9669-4a58-8b1e-5ce63226b471/window/current/size
[HTTP] {}
[MJSONWP (62f6c08d)] Calling AppiumDriver.getWindowSize() with args: ["current","62f6c08d-9669-4a58-8b1e-5ce63226b471"]
[XCUITest] Executing command 'getWindowSize'
[HTTP] --> GET /wd/hub/session/62f6c08d-9669-4a58-8b1e-5ce63226b471/screenshot
[HTTP] {}
[MJSONWP (62f6c08d)] Calling AppiumDriver.getScreenshot() with args: ["62f6c08d-9669-4a58-8b1e-5ce63226b471"]
[XCUITest] Executing command 'getScreenshot'
[HTTP] --> GET /wd/hub/session/62f6c08d-9669-4a58-8b1e-5ce63226b471/source
[HTTP] {}
[MJSONWP (62f6c08d)] Calling AppiumDriver.getPageSource() with args: ["62f6c08d-9669-4a58-8b1e-5ce63226b471"]
[XCUITest] Executing command 'getPageSource'
[WD Proxy] Proxying [GET /window/size] to [GET http://localhost:8100/session/CAAC0A4B-1CC3-4169-AA88-891AE51A2F93/window/size] with no body
[WD Proxy] Got response with status 200: {
[WD Proxy] "value" : {
[WD Proxy] "width" : 768,
[WD Proxy] "height" : 1024
[WD Proxy] },
[WD Proxy] "sessionId" : "CAAC0A4B-1CC3-4169-AA88-891AE51A2F93"
[WD Proxy] }
[XCUITest] Taking screenshot with WDA
[WD Proxy] Matched '/screenshot' to command name 'getScreenshot'
[WD Proxy] Proxying [GET /screenshot] to [GET http://localhost:8100/session/CAAC0A4B-1CC3-4169-AA88-891AE51A2F93/screenshot] with no body
[MJSONWP (62f6c08d)] Responding to client with driver.getWindowSize() result: {"width":768,"height":1024}
[HTTP] <-- GET /wd/hub/session/62f6c08d-9669-4a58-8b1e-5ce63226b471/window/current/size 200 829 ms - 99
[HTTP]
[WD Proxy] Got response with status 200: {
[WD Proxy] "value" : "iVBORw0KGgoAAAANSUhEUgAABgAAAAgACAIAAABvs29hAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAGAKADAAQAAAABAAAIAAAAAAChy0HlAAAAHGlET1QAAAACAAAAAAAA\r\nBAAAAAAoAAAEAAAABAAAHjmOsOMvmAAAQABJREFUeAHsvfebXMWZ9l8KgARCKADK\r\nAiQEQhGlyamnp3vyTE\/n3D3dkzUKiOiAMRhwWta7a6+95vWu0zph72KTFSaHztMz\r\nI\/Be73\/z\/Tx1egZ5dzFo39++e7iKvs50n1On6qmnSue+z\/08peoKgdsqtYVgXZ4S\r\ntuTCjdloU4YSpjTmApZcoCEf4FfOqc1Ha\/Px2nyiIR+05IKNWSmlnxZ8DXmfLetp\r\nSVN8tgyXhGsK8cqFROVCsq7go9QWApSqYpBSueijVC16aoqeuoLHkvdxo8Ysd5cG\r\nWHThLty6oeCpW3DVFCmcGWjIhevy0YZcVJrKJXlnY94hp9FI3WvjLjULgf9Uahd8\r\nFKMlfHJ+U5ZCF6TXdEd6lPPREtqji5xDq\/j+tozJyZb0cF22v1K6STMwEQ2OU7AJ\r\npSGb4NeaPCXBjRoWHE15R2Pexb24tmrRWbnkrCoGqhaiFK5tzgSa0xg\/wfnYhEbS\r\n7Kasj75bCk7MXrMQPrOUOLcYp+9NOU9zxscldEoMiG0LTluWofHxE9fSKc4vWwyX\r\nF7Eh9UjHdQnragOc2TUXaEkFOa18McwYNRRctpyTkRWXyMS1h3Cyj9pqioxjoG7B\r\nQUdqCrhHwpLlhLC+l4e2SSm4aENjoYsDKjy3SK9vzz+5C6PJjfCc2oK2Ib1bKZiU\r\nL2mtLtrHFsIY\/9xNV\/mSB1+izeIV2kXpKW6JG9N4eqp9...
[WD Proxy] Matched '/source' to command name 'getPageSource'
[WD Proxy] Proxying [GET /source] to [GET http://localhost:8100/session/CAAC0A4B-1CC3-4169-AA88-891AE51A2F93/source] with no body
[MJSONWP (62f6c08d)] Responding to client with driver.getScreenshot() result: "iVBORw0KGgoAAAANSUhEUgAABgAAAAgACAIAAABvs29hAAAAAXNSR0IArs4c6QAA\r\nAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKAC\r\nAAQAAAABAAAGAKADAAQAAAABAAAIAAAAAAChy0HlAAAAHGlET1QAAAACAAAAAAAA\r\nBAAAAAAoAAAEAAAABAAAHjmOsOMvmAAAQABJREFUeAHsvfebXMWZ9l8KgARCKADK\r\nAiQEQhGlyamnp3vyTE/n3D3dkzUKiOiAMRhwWta7a6+95vWu0zph72KTFSaHztMz\r\nI/Be73/z/Tx1egZ5dzFo39++e7iKvs50n1On6qmnSue+z/08peoKgdsqtYVgXZ4S\r\ntuTCjdloU4YSpjTmApZcoCEf4FfOqc1Ha/Px2nyiIR+05IKNWSmlnxZ8DXmfLetp\r\nSVN8tgyXhGsK8cqFROVCsq7go9QWApSqYpBSueijVC16aoqeuoLHkvdxo8Ysd5cG\r\nWHThLty6oeCpW3DVFCmcGWjIhevy0YZcVJrKJXlnY94hp9FI3WvjLjULgf9Uahd8\r\nFKMlfHJ+U5ZCF6TXdEd6lPPREtqji5xDq/j+tozJyZb0cF22v1K6STMwEQ2OU7AJ\r\npSGb4NeaPCXBjRoWHE15R2Pexb24tmrRWbnkrCoGqhaiFK5tzgSa0xg/wfnYhEbS\r\n7Kasj75bCk7MXrMQPrOUOLcYp+9NOU9zxscldEoMiG0LTluWofHxE9fSKc4vWwyX\r\nF7Eh9UjHdQnragOc2TUXaEkFOa18McwYNRRctpyTkRWXyMS1h3Cyj9pqioxjoG7B\r\nQUdqCrhHwpLlhLC+l4e2SSm4aENjoYsDKjy3SK9vzz+5C6PJjfCc2oK2Ib1bKZiU\r\nL2mtLtrHFsIY/9xNV/mSB1+izeIV2kXpKW6JG9N4eqp9OMqvRpNkxHFFo9l5cRiK\r\n...
[HTTP] <-- GET /wd/hub/session/62f6c08d-9669-4a58-8b1e-5ce63226b471/screenshot 200 1276 ms - 4894438
[HTTP]
[WD Proxy] Got response with status 500: {
[WD Proxy] "value" : {
[WD Proxy] "error" : "unknown error",
[WD Proxy] "message" : "Cannot get 'xml' source of the current application",
[WD Proxy] "traceback" : ""
[WD Proxy] },
[WD Proxy] "sessionId" : "CAAC0A4B-1CC3-4169-AA88-891AE51A2F93"
[WD Proxy] }
[W3C] Matched W3C error code 'unknown error' to UnknownError
[MJSONWP (62f6c08d)] Encountered internal error running command: UnknownError: An unknown server-side error occurred while processing the command. Original error: Cannot get 'xml' source of the current application
[MJSONWP (62f6c08d)] at errorFromW3CJsonCode (/Applications/Appium.app/Contents/Resources/app/node_modules/appium-xcuitest-driver/node_modules/appium-base-driver/lib/protocol/errors.js:780:25)
[MJSONWP (62f6c08d)] at ProxyRequestError.errorFromW3CJsonCode [as getActualError] (/Applications/Appium.app/Contents/Resources/app/node_modules/appium-xcuitest-driver/node_modules/appium-base-driver/lib/protocol/errors.js:663:14)
[MJSONWP (62f6c08d)] at JWProxy.getActualError [as command] (/Applications/Appium.app/Contents/Resources/app/node_modules/appium-xcuitest-driver/node_modules/appium-base-driver/lib/jsonwp-proxy/proxy.js:259:19)
[HTTP] <-- GET /wd/hub/session/62f6c08d-9669-4a58-8b1e-5ce63226b471/source 500 31713 ms - 221
Hi @samhouts! Any updates for us on this one? We're a bit of a standstill with our automation strategy at the moment due to these issues so any update you might have for us regarding the status would be very helpful. Thank you!
Hi guys! i'm also interested in working solution as we upgraded up to Xamarin 4.5 but no positive affect in inspecting elements in appium
Pretty sure it's the "lazy load" on the accessibility id's unless VoiceOver is on, if I turn on VoiceOver the inspector can again see elements..
Our QA run into the same issue. On Android it works well. But not on iOS with v. 4.5.0.657 where a CollectionView contains items which are custom controls (inherited from ContentView).
Update: Could fix this issue on my side by replacing the CollectionView and with a StackLayout and BindableLayout.ItemsSource. iOS and Android Appium UI tests now green.
Hi Guys,
We're facing a similar issue in our project as well. For Xamarin.Forms SearchBar control. We can spy the control successfully. But we are not able to set text using iOS automation test scripts. However it works fine in Android.
The search bar is rendered as a XCUIElementTypeOther in iOS, for which we are unable to set text in automation scripts.
Any help is appreciated.
Thanks.
Hi,
We are facing somewhat of the same issue with XCUITest and Xamarin.Forms since we've upgraded from version 4.1.0.618606 to 4.5.0.396. What we've noticed is a performance degradation in testing and issues with find finding elements due to multiplication.
The performance degradation is probably because of the very big DOM that is generated for XCUITest and that can also cause status 500 errors since the DOM is then too big to process/download. I see more status 500 errors reported above.
The big DOM is caused by duplication of the elements. And actually it's more like multiplication since an element can sometimes have 21 instances while only 1 is on the form for sure.
Performance degradation is noticed with the test tooling when manually creating/editing tests but most significantly noticed with BrowserStack where most of our automated tests took about 1 minute and went up to 9 minutes per test.
Below screenshot is an Appium test with our application that's build with Xamarin.Form 4.1.0.618606 where the element has a single match when searching for the element ACCESSIBILITYID: DEMO
Below screenshot is an Appium test with our application that's build with Xamarin.Form 4.1.0.618606 where the element has a single match when searching the element for XPATH: //XCUIElementTypeStaticText[@value='DEMO']
Below screenshot is an Appium test with our application that's build with Xamarin.Form 4.5.0.396 where the element has 9 matches when searching for the element ACCESSIBILITYID: DEMO
Below screenshot is an Appium test with our application that's build with Xamarin.Form 4.5.0.396 where the element has 9 matches when searching the element for XPATH: //XCUIElementTypeStaticText[@value='DEMO']
We use TestProject for our Appium tests, their support team tried to find the root cause using pure Appium. Their response:
_Unfortunately, it's not capable of retrieving this screen DOM - it times out, see_ _timeout-page-source.log_
_Even when requesting the DOM using pure XCUITest means via Xcode, we get the duplicate elements - see_ _description-dom.txt_
Today we've created a simple new app with Xamarin.Forms to test out some other functionality and this app based on version 4.6.0.726 has the same issue.
Also tried an app from the app store from which I know it's built with Xamarin.Forms and that app also has the same issues with multiplication of elements.
Hope this helps pinpointing the issue.
Thanks in advance.
Regards,
Peter
thanks @samhouts
The nuget for this Issue is here
https://dev.azure.com/xamarin/public/_build/results?buildId=21211&view=artifacts&type=publishedArtifacts
If anyone wants to test and let me know if that fixes for you
We will poke this and report back, thank you!
@PureWeen I tried upgrading our app to latest 4.7 nuget which you gave, but still we are seeing the issue. Unable to find elements using Appium XPath, but AccessibilityId is working. Find Element by Xpath still shows same error as in Xamarin Forms 4.6
@RafeeqMohammed can you create a new issue that we can track against for the XPath issue with a repro?