EarlGrey icon indicating copy to clipboard operation
EarlGrey copied to clipboard

Appium support

Open bootstraponline opened this issue 7 years ago • 6 comments

If EarlGrey supported the mobile JSON wire protocol then Appium could be used with EarlGrey. See facebook/WebDriverAgent for an example.

The primary benefit is enabling testing in any language, instead of having to use Swift/ObjC.

https://github.com/appium/appium/issues/7175

bootstraponline avatar Jan 19 '17 14:01 bootstraponline

To be clear, this feature would require us to have an abstraction layer on top of EarlGrey that supports the JSON protocol? So you would write tests that could be converted into the JSON protocol that would then be converted into EarlGrey code?

tirodkar avatar Jan 19 '17 22:01 tirodkar

I recommend checking out the WDA ObjectiveC code for a very clear idea of what this looks like. The request is to include a HTTP server in EarlGrey that implements the WebDriver end points. Tests would be written using the existing WebDriver bindings.

Tests would use the WebDriver protocol to talk to the EarlGrey server. There's no conversion of code, it's just a mapping of a protocol to commands.

bootstraponline avatar Jan 19 '17 23:01 bootstraponline

We are aware of this and will be in our roadmap, but we just don't have enough justifications yet to prioritize this at this point. Stay tuned!

wuhao5 avatar Jan 20 '17 03:01 wuhao5

An option to use EarlGrey via appium instead of using XCuiTest would be a great feature - I'm currently not very happy with XCuiTest tests (45 seconds to select one row in a large table for example vs 3 secs on Android) and have a bunch of tests reliant on Appium, if EarlGrey had an available appium driver (supported the WebDriver protocol) then the cross platform nature of Appium could be retained, reducing effort to maintain tests, and could make use of EarlGrey in the backend giving another option for iOS testing.

TheCodeSharman avatar Aug 22 '19 08:08 TheCodeSharman

Bumping this in 2022. Could a bounty be placed on this feature?

nextlevelbeard avatar Aug 02 '22 18:08 nextlevelbeard

XCUITest has severe limitations. 60-level nesting hard maximum. Times out when DOM is too large. Some lookups are really just extremely slow. (minutes!) Lot of properties are not visible. Having an EarlGrey driver would be such an enabler. I don't really mind if I have to make a special build with a backdoor for white-box access like oDistantObject or something else, at least I would be able to test bigger apps without restrictions.

Anybody attempted this? I can't find any mentions.

popbee avatar Apr 04 '23 16:04 popbee