-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Protractor doesn't support angular synchronization on iOS #2840
Comments
Assigning to @sjelin - we're hoping to refresh mobile docs/setup soon. |
I have the same problem. I have a simple cordova application and some simple tests. The tests work perfectly in the browser and on Android, but in iOS I get the error: 'Failed: ERROR running Appium command: Cannot assign to read only property '1' of true'. I will attach the protractor config and the test. Am I doing something wrong or is this a bug? protractor-ios.config.txt |
Did you got this working on iOS simulator? We are looking into it further |
Nope, not yet. |
I upgraded my Appium version to 1.5 (from 1.4.13) and now I don't get those errors anymore. I get different errors though. It seems as if the click doesn't work, but that is a different problem. |
I am using Appium 1.4.13 and Xcode 7.2 but I am not able to execute any of my tests in IOS simulator. Issue persists in Sauce labs emulator as well Job Details - https://saucelabs.com/beta/tests/f3bb551a0daf4f5d9d867b71e9b29657 |
I'm wondering if this is the issue: https://discuss.appium.io/t/protractor-safari-tests-broken-on-ios-9/7354 |
Hi Sjelin, any resolution to resolve the issue |
Yeah, I'm working on it. Hopefully I'll have something in next week, but we'll see. |
Hi Sjelin, Hope you are doing good ! Did you get a chance to look into the issue? |
I did! I got wrapped up in other things though. Hopefully before the end of this week I'll have something for you 😄 |
Any news? |
Hi Sjelin, any updates? Its really holding our IOS automation... Earliest fix on this would be much more appreciated !! |
Our team is also looking for any update! The BrowserStack emulator seems to have the same issue as well. |
We have the same problem. We were able to run test on iOS 8 but when we updated to iOS 9 tests don't run. Only run if |
I have the simillar issue when running protractor(v 4.0.8) tests on IOS 9.3 (either Emulator or Real device), Ionic2 Hybrid app with Angular2. In protractor.conf useAllAngular2AppRoots: true On Real device another behaviour, there is no hanging but some clicks on elements won't work. |
Is anyone able to launch safari browser on real iOS devices with protractor |
Hey guys, sorry for the lack of updates. I'm not entirely sure what I was talking about in #2840 (comment) but support for iOS an mobile in general has improved a lot. Maybe #3326 will address your problems but probably not to be honest. I'll see if I can dig into this next week. |
I currently use protractor and iOS Safari in 3 different combinations and it works:
The first 2 are simulators, Perfecto has physical devices @sjelin, if you need help with this I can maybe help to debug it if there are problems |
@wswebcreation thanks for the offer! I'll let you know |
Hello,
However, since I've an angular page I should not need to ignoreSync and wait for the element to be visible to click on him. I've this working on Android/Chrome without the ignoreSync and the wait until element located. However, in Safari/iOS, if i don't add the ignoreSynch before the browser get, the website will be stuck on the bootstrap throwing the "angular never provided resumebootstrap" with just the "browser.get()" code on my test. Is this the same issue that angular and iOS/Safari are not yet fully supported? |
It's still not fully supported, no. Unfortunately, I was in charge of mobile support and I was just transferred to another team, so support may be a long time coming. There are some good resources online though |
It's funny. I have it worked in iOS but not in Android. Just opposite of your problem. |
Trying to get tests to run in mobile safari with Appium / iOS simulator / 10.3 but also getting Safari 10.1 on macOS Sierra seems to be working with this workaround but would throw the same error otherwise.
EDIT: Ok, so specifying this
will let angular synchronize with Safari running in iOS simulator. I don't know any global browser variable for Appium to set this line conditionally. If anyone does pls let me know 👍 |
@sjelin does this issue present itself only when combined with appium or also if the "normal" iOS safari driver is used? |
What do you exactly mean? the iOS safari driver is used by Appium (?) |
@wswebcreation I mean writing protractor tests without appium 😄 just protractor tests for a angular website... |
Safari 10.3 & 11.0 do not work with Protractor, however on Sierra macOS running Safari 11.0.1 does. Just turn off synchronization right before your first browser.get call and immediately turn it back on following that first call, then you're good to go. |
Tnx for your answer / workaround, will also try it. |
Can anyone help me with the following error?
|
Have anyone found a solution for this? |
This issue is similar to #1736
I cannot run my tests on iOS real device using appium and protractor. Tests fail each time with following errror: 'ERROR running appium command: Cannot assign to read only property X of true' where X is 'random' digit.
I've tried many configuration varieties, etc. and still got the same error.
The only workaround is to turn of synchronization by adding ignoreSynchronization=true to my tests. But with such workaround there is no point to use protractor anymore.
Here are instructions to integrate iOS with Safari, Appium and protractor:
You can find test.conf.js, appium console output and protractor console output in attached.
I've also tried to run tests with selenium grid by registering iOS node and the result was the same
Versions:
If you need any additional information please let me know.
Just FYI, I can successfully run the same script with similar configuration on Windows - IE, Firefox, Chrome and Android - Chrome - real device
appium_output.txt
protractor_output.txt
test.conf.js.txt
The text was updated successfully, but these errors were encountered: