maestro
maestro copied to clipboard
Support real iOS devices
Hello,
I wanted to know if any work had been started on supporting real iOS devices.
Thank you in advance.
Hey, we are gradually working towards that goal. One of the requirements for that is to move away from IDB dependency and switch over to our newest XCUITest driver. A rough estimation for real device support is Q2 2023
Are there any news about this feature? Having a real device it's a requirement for testing in-app purchases on iOS
I've seen commits go by where IDB is replaced, but I think it's not over yet.
@dmitry-zaitsev Hey, are there any updates about moving away from IDB?
@dmitry-zaitsev we're currently evaluating UI testing for real devices for our mobile app. iOS real device support is a big deal. We need to have some sort of idea or estimate of when this might be available, especially as Q2 has been and gone. Are you able to provide this? Your silence after @LoC743's comment is slightly worrying.
+1, this project looks great but without physical iOS support my team can't migrate to using it
@amanjeetsingh150 does this PR move us closer to iOS device support? https://github.com/mobile-dev-inc/maestro/pull/1319?
@zacharyfmarion just fyi, I believe @dmitry-zaitsev left mobile.dev earlier this year. So that'll be why he's not replying.
I emailed Maestro support and asked about iOS and they told me:
We looked into it and it was going to be a much larger investment in time and resources than initially anticipated but absolutely still on our radar for the future. Many customers haven't had a hard requirement for it to run their testing so we are just trying to prioritize what is most urgent for our users. Dev experience and time saved on testing is definitely the biggest factor for folks moving forward with Maestro.
Which is disappointing- but understandable.
I don't know about that PR but it looks interesting.
Hey, @zacharyfmarion yes that's right it was huge blocker for real device support getting rid of IDB moves us one step closer to the real device.
Now as @tomoakley said it is definitely a larger investment, I could name some of the blockers that still remain for physical device from maestro side:
- Having XCTest support for the implementations that still rely on simctl here: https://github.com/mobile-dev-inc/maestro/blob/main/maestro-ios/src/main/java/ios/simctl/SimctlIOSDevice.kt for example screen recording, launching app etc.
- Getting rid of applesimutils: https://github.com/mobile-dev-inc/maestro/blob/5684c215d6979e64890b89e6fa5a3d24d40bd55c/maestro-ios-driver/src/main/kotlin/util/LocalSimulatorUtils.kt#L321 Right now the way how it works is: apart from notifications permissions every permission is auto granted from
applesimutils
which again needs an alternative implementation for physical device. For this one, we can auto grant every permission to similar to how notifications work from this request here: https://github.com/mobile-dev-inc/maestro/blob/main/maestro-ios-xctest-runner/maestro-driver-iosUITests/Routes/Helpers/SystemPermissionHelper.swift#L6.
Contributions are welcome on this let me know if you need help 🙌
Hey, @amanjeetsingh150 has anyone looked into go-ios (https://github.com/danielpaulus/go-ios) as a possible solution for implementing real iOS device support into Maestro?
Hey, any news on this topic? We are waiting for this feature and it was estimated for Q2. Thanks a lot!
Hi, any news on this topic?
Any progress on this? or in lieu of that any materials to share that could entice contributors to try and help with this?