Appium with Crosswalk app

I would like to run tests using appium in a crosswalk hybrid application (https://crosswalk-project.org/). Is there a way to do this in appium, or are there any upcoming features to support it?

What is a difference b/w a normal android hybrid app and crosswalk hybrid app ??

The difference is that a crosswalk app uses a web view of its own based on chromium.
Any update about this? We require e2e tests for our crosswalk app as well

I have only worked on hybrid app with a webview.

You can give it a try using appium .
Switch to WEBVIEW context and using selenium api’s are you able to automate it.
You can use chrome remote debugger for inspecting app elements

Thanks @amitjaincoer191 , I’ll think about it, as as far as i know to use regular web view i’ll need to remove crosswalk, which is obviously less preferred.

Workaround found for now, can finally start developing e2e tests with appium, crosswalk, protractor ionic.

Thanks to piotrekkmt post on appiums github (https://github.com/appium/appium/issues/4597), he added a web driver supporting crosswalk with a short explanation for mac. If you got a mac, this could solve the inability to perform protractor tests with appium when working with crosswalk:

https://github.com/piotrekkmt/chromedriver-appium

2 Likes

@amitjaincoer191 Have you tried to automate ionic hybrid iOS app because I did give a try but appium is not able to identify ionic tags present in html view of the page

@souly1 Any other way? Planning to keep functional test project independent on development project. Use to protractor less preferred if its possible without it.

Thanks, I could replicate this, but now I can’t make a test capturing the WebView inside the app

Any resolution found? How can test ionic apps ?
will protractor-appium framework work?

Protractor - appium certainly works…
Protractor is specifically built for ionic apps. It can identify the ionic elements. The feature which I loved most about protractor was you don’t need to add implicit/explicit wait. Protractor performs action on any element after the entire element is loaded fully on page(it waits even if element is in DOM and not on screen).

It helps to avoid unnecessary failures due to element not visible/stale element exceptions and others. Give it a try.

Hi guys , any news ? is there a way to automate crosswalk apks with Appium desktop ?