A: No, the app that you would like to automate must not be modified.
A: Yes, only the app itself can be automated becasue selendroid depends on the Android instrumentation framework.
A: Yes, selendroid can automate native and hybrid apps.
A: Yes, when using you use selendroid-standalone then existing emulators are started automatically if the desired capabilities are matching to one of the existing Emulators. Since version 0.9.0 selendroid can also interact with already started emulators.
A: Usually resigning issues are caused when the JAVA_HOME is pointing to an Java Runtime Environment (JRE) instead of a Java Software Development Kit (SDK). When a IDE is used to start selendroid-standalone, please have a look at your test runner. In some cases the IDE pointed to a JRE and which caused the failure.
A: When selendroid is starting emulators, for that test session the locale can be changed. If already started emulators are used, the locale cannot be changed, because that would cause an emulator restart, which wouldn't make sense to use already started emulators in the first place. On hardware devices the locale cannot be changed programmatically.
When you have multiple devices connected to a node with multiple locales and you are using the selenium grid, then you can add the locale property to the registration request that the grid-node is sending to the grid-hub and write your own CapabilityMatcher that considers the locale property. More details about how to used the Grid you find here.
>A: We are maintaining a special test app with a bunch of automated tests. Those tests are executed before we release and also every time a commit is done. We use Travis CI: https://travis-ci.org/selendroid/selendroid.
A: Come and join us on IRC: #selendroid on freenode.net
A: Yes: There is an article on Methods and Tools Magazine.
Currently there are three talks available:
Selendroid's inspector is able to display the HTML source of the web view. The other option is to use selendroid's build in mechanism to get the page source via driver.getPageSource()
.
A: A very good article about all the architecture details of the selenium project can be found here.