-
Notifications
You must be signed in to change notification settings - Fork 470
IWDP Struggles to detect webview, however, when it does, operation after switching to webview times out. (iOS 11.2.1, xcode 9.3) #258
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
I can't see any errors in messages from iwdp, are you certain the issue is not related to appium? |
if you can craft a minimal example app and provide appium script it would certainly help |
I'm not a developer I'm afraid so don't have the know-how to do so. I've also tried viewing the inspectable applications via http://localhost:27743/ (custom port) but the hybrid app doesn't appear. Is there a way I can determine if it is appium or IWDP? |
You can run Could you please provide a gist of appium script? It would give at least some information |
Sure, my capabilities are:
The only bit of the appium script I'm trying to run at present is `available_views = @dom_interaction.driver.available_contexts @dom_interaction.driver.set_context(available_views[1]) els5 = @dom_interaction.driver.find_element(:css, "#account-bar-login-btn") |
startIWDP is set to false, are you testing on emulator device? UPD: Oh sorry, I see you're testing on real device, this config line is a bit confusing |
Sorry, should have stated, I'm running IWDP manually from the terminal, and
running on a real device
…On 8 May 2018 at 10:47, Arty Gus ***@***.***> wrote:
startIWDP is set to false, are you testing on emulator device?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#258 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AerVy4z2MiYkA-bNiBCn3tkLS8dB4nAQks5twWmmgaJpZM4T2QVO>
.
--
*KYLE THOMAS*
*SENIOR CONSULTANT*
*Infinity Works*
Mobile: 07891098771
Email: [email protected] <[email protected]>
www.infinityworks.com
Infinity Works Consulting is a limited company registered in England and
Wales.
Company Registration No. 08189469
Registered offices: 3rd Floor, Apsley House, 78 Wellington St, Leeds, LS1
2EQ
<https://maps.google.com/?q=78+Wellington+St,+Leeds,+LS1+2EQ&entry=gmail&source=g>
--
***** Email confidentiality notice *****
This message is private and
confidential. If you have received this message in error, please let us
know and remove it from your system.
|
It now won't find the webview anymore, it looks like it's closing the connection for some reason?
|
Connection: close is a normal header, meaning keep alive is not supported |
What's your app mechanics in terms of dynamic webviews? I'm not sure what "struggles" in the title means? If you run your app with only iwdp running (no appium) can you see all the webviews? |
So WEBVIEW_1 should always be an available context. And by struggles, sometimes I can view the webview, sometimes I can't, running the exact same set up. I've been trying to reproduce what could cause me to see the webview reliably, but I can't, currently can't see the webview via appium or http://localhost:27743/ |
can you see it in safari under develop tab? |
No I can't |
it's unlikely iwdp can detect webview if safari failed to do so (unless you have older version of safari, |
Hmm, I have been able to see the webview via IWDP/Appium though, and never actually been able to see it in Safari (I have the latest version) |
that's interesting, what if you install safari technology preview? |
No, still not present in the the tech preview |
@artygus do you have any ideas? Can't see any inspectable hybrid applications in IWDP or Safari inspector, can see safari pages though on 11.2.1. However, sometimes it will just appear and I can't figure out how |
@kdthomas2121 maybe it's related to the app mechanics? are webviews dynamic (appear on user interaction)? |
No they're always visible, running the tests remotely via testobject works
fine for displaying the webview, using pretty much the same code oddly
enough
…On 17 May 2018 at 14:48, Arty Gus ***@***.***> wrote:
@kdthomas2121 <https://github.com/kdthomas2121> maybe it's related to the
app mechanics? are webviews dynamic (appear on user interaction)?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#258 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AerVy3xjzgn0VvqamqxA7NwWgepj5M8yks5tzX-bgaJpZM4T2QVO>
.
--
*KYLE THOMAS*
*SENIOR CONSULTANT*
*Infinity Works*
Mobile: 07891098771
Email: [email protected] <[email protected]>
www.infinityworks.com
Infinity Works Consulting is a limited company registered in England and
Wales.
Company Registration No. 08189469
Registered offices: 3rd Floor, Apsley House, 78 Wellington St, Leeds, LS1
2EQ
<https://maps.google.com/?q=78+Wellington+St,+Leeds,+LS1+2EQ&entry=gmail&source=g>
--
***** Email confidentiality notice *****
This message is private and
confidential. If you have received this message in error, please let us
know and remove it from your system.
|
Experiencing almost the same issue essentially after upgrading to Appium 1.8.1. It can see the webview but when it tried to switch to it, it just says it times out even though it fails after about 2 seconds.
|
artygus posted on google/ios-webkit-debug-proxy#259 to perform |
@kdthomas2121 if testobjects.com works fine, the issue could be related to your local environment. did you try to redo pairing? e.g. by cleaning /var/db/lockdown/<hash>.plist |
issue seem to be related to regression introduced in appium 1.8.1 appium/appium#10741 |
Still not working for me after updating to the new appium beta as detailed in that issue! Let me know if I can provide anymore info |
@kdthomas2121 for me after updating to 1.8.2-beta new problem occured - described here Issue 924 |
I've been struggling for a few days to get IWDP to view a webview on a hybrid app. But I've been able to do it semi-reliably now. However, after switching to the webview, any action I try and perform results in:
Selenium::WebDriver::Error::UnknownError: An unknown server-side error occurred while processing the command. Original error: operation timed out
from UnknownError: An unknown server-side error occurred while processing the command. Original error: operation timed out.
Here's the log from IWDP immediately after trying to find a CSS selector
00 00 DD 5D 62 70 6C 69 73 74 30 30 D2 01 03 02 04 5A 5F ...]bplist00.....Z_ 5F 73 65 6C 65 63 74 6F 72 5F 10 17 5F 72 70 63 5F 66 6F _selector_.._rpc_fo 72 77 61 72 64 53 6F 63 6B 65 74 44 61 74 61 3A 5A 5F 5F rwardSocketData:Z__ 61 72 67 75 6D 65 6E 74 D5 05 07 09 0B 0D 06 08 0A argument......... 0C 0E 5F 10 1A 57 49 52 43 6F 6E 6E 65 63 74 69 6F 6E 49 .._..WIRConnectionI 64 65 6E 74 69 66 69 65 72 4B 65 79 5F 10 24 31 34 37 35 dentifierKey_.$1475 33 41 39 45 2D 37 31 42 43 2D 34 32 41 42 2D 38 30 37 43 3A9E-71BC-42AB-807C 2D 33 32 46 35 43 33 45 37 38 31 30 34 5F 10 1B 57 49 52 -32F5C3E78104_..WIR 41 70 70 6C 69 63 61 74 69 6F 6E 49 64 65 6E 74 69 66 69 ApplicationIdentifi 65 72 4B 65 79 57 50 49 44 3A 34 36 39 5F 10 14 57 49 52 erKeyWPID:469_..WIR 50 61 67 65 49 64 65 6E 74 69 66 69 65 72 4B 65 79 10 01 PageIdentifierKey.. 5C 57 49 52 53 65 6E 64 65 72 4B 65 79 5F 10 24 34 32 44 \WIRSenderKey_.$42D 44 30 37 41 45 2D 31 45 34 36 2D 34 45 34 35 2D 41 30 43 D07AE-1E46-4E45-A0C 41 2D 33 44 33 39 30 46 35 39 36 42 36 32 5F 10 10 57 49 A-3D390F596B62_..WI 52 53 6F 63 6B 65 74 44 61 74 61 4B 65 79 4F 11 DC 09 7B RSocketDataKeyO...{ 22 6D 65 74 68 6F 64 22 3A 22 52 75 6E 74 69 6D 65 2E 65 "method":"Runtime.e 76 61 6C 75 61 74 65 22 2C 22 70 61 72 61 6D 73 22 3A 7B valuate","params":{ 22 6F 62 6A 65 63 74 47 72 6F 75 70 22 3A 22 63 6F 6E 73 "objectGroup":"cons 6F 6C 65 22 2C 22 69 6E 63 6C 75 64 65 43 6F 6D 6D 61 6E ole","includeComman 64 4C 69 6E 65 41 50 49 22 3A 74 72 75 65 2C 22 64 6F 4E dLineAPI":true,"doN 6F 74 50 61 75 73 65 4F 6E 45 78 63 65 70 74 69 6F 6E 73 otPauseOnExceptions 41 6E 64 4D 75 74 65 43 6F 6E 73 6F 6C 65 22 3A 74 72 75 AndMuteConsole":tru 65 2C 22 65 78 70 72 65 73 73 69 6F 6E 22 3A 22 28 66 75 e,"expression":"(fu 6E 63 74 69 6F 6E 28 29 7B 72 65 74 75 72 6E 20 66 75 6E nction(){return fun 63 74 69 6F 6E 28 29 7B 76 61 72 20 6B 3D 74 68 69 73 3B ction(){var k=this; 66 75 6E 63 74 69 6F 6E 20 6C 28 61 29 7B 72 65 74 75 72 function l(a){retur 6E 20 76 6F 69 64 20 30 21 3D 3D 61 7D 66 75 6E 63 74 69 n void 0!==a}functi 6F 6E 20 71 28 61 29 7B 72 65 74 75 72 6E 5C 22 73 74 72 on q(a){return\"str 69 6E 67 5C 22 3D 3D 74 79 70 65 6F 66 20 61 7D 66 75 6E ing\"==typeof a}fun 63 74 69 6F 6E 20 61 61 28 61 2C 62 29 7B 61 3D 61 2E 73 ction aa(a,b){a=a.s 70 6C 69 74 28 5C 22 2E 5C 22 29 3B 76 61 72 20 63 3D 6B plit(\".\");var c=k +56086 ss.sendq<0x7ff3a9c04d90> new fd=7 recv_fd=5 length=48481, prev=<0x0> ss.sendq<0x7ff3a9c04d90> disable recv_fd=5 ss.sendq<0x7ff3a9c04d90> resume send to fd=7 len=48481 ss.sendq<0x7ff3a9c04d90> defer len=40289 ss.sendq<0x7ff3a9c04d90> resume send to fd=7 len=40289 ss.sendq<0x7ff3a9c04d90> defer len=32097 ss.sendq<0x7ff3a9c04d90> resume send to fd=7 len=32097 ss.sendq<0x7ff3a9c04d90> defer len=23905 ss.sendq<0x7ff3a9c04d90> resume send to fd=7 len=23905 ss.sendq<0x7ff3a9c04d90> defer len=15713 ss.sendq<0x7ff3a9c04d90> resume send to fd=7 len=15713 ss.sendq<0x7ff3a9c04d90> defer len=7521 ss.sendq<0x7ff3a9c04d90> resume send to fd=7 len=7521 ss.sendq<0x7ff3a9c04d90> re-enable recv_fd=5 ss.sendq<0x7ff3a9c04d90> free, next=<0x0>
And here is the appium log
[debug] [RemoteDebugger] Executing 'find_element' atom in default context [debug] [RemoteDebugger] Sending javascript command (function(){return function(){var k=this;functi... [debug] [RemoteDebugger] Sending WebKit data: {"method":"Runtime.evaluate","params":{"objectGroup":"console","includeCommandLineAPI":true,"doNotPauseOnExceptionsAndMuteConsole":true,"expression":"(function(){return function(){var k=this;functi... [debug] [RemoteDebugger] Webkit response timeout: 2000 (node:2917) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 5): TimeoutError: operation timed out [W3C] Encountered internal error running command: TimeoutError: operation timed out [W3C] at afterTimeout (/usr/local/lib/node_modules/appium/node_modules/appium-remote-debugger/node_modules/bluebird/js/release/timers.js:46:19) [W3C] at Timeout.timeoutTimeout [as _onTimeout] (/usr/local/lib/node_modules/appium/node_modules/appium-remote-debugger/node_modules/bluebird/js/release/timers.js:76:13) [W3C] at ontimeout (timers.js:386:11) [W3C] at tryOnTimeout (timers.js:250:5) [W3C] at Timer.listOnTimeout (timers.js:214:5) [HTTP] <-- POST /wd/hub/session/da4e2d55-3db6-4fbf-aa41-f0cb684c8efd/element 500 2039 ms - 1102 [HTTP] [HTTP] --> POST /wd/hub/session/da4e2d55-3db6-4fbf-aa41-f0cb684c8efd/element [HTTP] {"using":"css selector","value":"#account-bar-login-btn"}
The commands are being sent as fast as possible, so unsure why it's timing out. If I can help with anymore info, let me know!
The text was updated successfully, but these errors were encountered: