mykola-mokhnach / Appium-iOS-Inspector

Apache License 2.0
145 stars 60 forks source link

What needs to be done to have a standalone Android Inspector as well? #6

Open lambourn opened 7 years ago

lambourn commented 7 years ago

Hi,

on the project page it says that the Appium-iOS-Inspector is based on the original source of Selendroid Inspector. I checked the original Selendroid Inspector code and noticed that it's actually a servlet based solution, tightly coupled with Selendroid itself.

Now if I'd wanted to create a "standalone" Inspector solution for Android that works with Appium, similar to what you did for iOS, what would be the general and preferred steps?

I assume that you started the original servlet based inspector and saved all HTML/JS/etc. files once loaded in the browser so everything is available locally and then adapted it to Appium-/iOS-specifics.

Would it be possible/suitable to start with your code base and add Android support or is it too coupled with Appiums iOS drivers so I'd rather start off the original Selendroid Inspector base?

Any hints?

mykola-mokhnach commented 7 years ago

In general, this might work just out of the box, since the current implementation only depends on the interfaces provided by Appium itself and makes the target platform as more abstract as possible. Although, there might be some differences in XML source structure, but they are easy to handle. Just look for the inspector.js script and update all the necessary stuff there.

lambourn commented 7 years ago

cool. I gave it a quick try and it indeed is only a matter of adapting the transformAutXmlToAjax() function, mainly where the metadata is pulled from the node.

mykola-mokhnach commented 7 years ago

@lambourn have you succeeded with Inspector development for Android. I think many other Appium users would be happy to use it as well if you want to share it.

lambourn commented 7 years ago

well, it's in a "works-for-me" state. Shall I create a PR for it?

mykola-mokhnach commented 7 years ago

Let's try, I can check