Appium

Appium

DevOps / Build, Test, Deploy / Mobile Testing Frameworks
Needs advice
on
IonicIonicPhoneGapPhoneGap
and
React NativeReact Native

Looking for some advice: we are planning to create a hybrid app for both iOS and Android; this app will consume a REST API. We are looking for a tool for this development with the following attributes:

  • Shallow learning curve; easiness to adopt (all team is new into mobile development, with diverse backgrounds: Java, Python & AngularJS),

  • Easiness to test (we discarded Angular-based tools already: creating a unit test in Angular we considered time-consuming and low value. At this point of the project, we cannot afford UI testing with Selenium/Appium based tools).

  • So far, we are not considering any specific capability of the device. Still, in the mid/long term, we would require the usage of GPS (geolocalization) and accelerometer (not sure if it's possible to use it from a hybrid app). Suggest any other tool if you wish.

READ MORE
7 upvotes·562.3K views
Replies (4)
CEO, Co-founder at inPlace·
Recommends
on
Kivy

If your team has a strong background in Python and you want to release some prototype soon, you could try Python and Kivy. Kivy is an open-source, cross-platform Python framework for rapid development of mobile GUIs. It supports both iOS and Android. I have passed a similar situation recently: to start a mobile app with no background in mobile development. Kivy saved me a lot of time. I could develop a prototype and release it faster than I thoght.

READ MORE
7 upvotes·65.3K views
Engineering at Xtartup·

To be honest , You need to think these points :

  • Developer Experience

  • Tooling

  • Maintainability

My vote for now is going with React Native with Expo , using Typescript...

With this stack You could follow some patterns and principle that the Java and python programmers are familiar with.

Typescript is a javascript Superset that you can follow Procedural , Functional and OOP approaches and an easy learning curve.

With Expo you need to concern only with the shared layer (Typescript) and the Native ones will be expo responsibility.

Please check Expo.com and try to get started using typescript.

Good performance and with EAS (paid plan) you can create a full CI CD pipeline for your app connected to the stores(Apple and Android).

READ MORE
5 upvotes·66.7K views
View all (4)
Needs advice
on
BitBarBitBarBrowserStackBrowserStack
and
KobitonKobiton

I want to I am doing mobile automation using Appium, Java, Testng. I have working framework and now I am evaluating the which cloud technology to be used. any recommendation.

READ MORE
3 upvotes·8K views
Needs advice
on
CypressCypressTestCafeTestCafe
and
WebdriverIOWebdriverIO

Hello, I am currently looking for a tool for automation tests in order to implement it into our CI/CD pipeline for both web development but also for Android and iOS. I considered Cypress but I need compatibility with Safari. I have knowledge of Java, C#, and JavaScript so the language isn't an issue. Also looked into Nightwatchjs and Puppeteer but found these 3 above more interesting.

My main concern is:

  • Browser support - Desktop - needs to support Google Chrome, Safari, Firefox and Microsoft Edge (minimum)
  • Browser support - Mobile - Safari and Chrome (minimum)
  • App - Android and iOS

If possible i would like to avoid using another tool for mobile (like Appium)

What do you use? What is the one you recommend (even another from the ones mentioned)

Thank you very much for your help!

READ MORE
5 upvotes·198.3K views
Replies (1)
Recommends
on
Cypress

Hello João Pires,

From my experience using API and Framework tests tools like Selenium Webdriver, CodeCeptJS, and Cypress I never ever see a unique test repository that can work over Web system and Native Mobile app. Many times, it is tried to use the same test suite to two kinds of app, a web, and native mobile app, and then the test flow is mapped using different selectors to both apps and conditional code are add growing the complexity of tests. Definitely, it is not a good practice.

I see great potential in using Cypress to modern web apps running on browsers to desktop or mobile. However, how your second point is to run on mobile browsers like Safari and Chrome may be a good approach will be using a service of Cross Browser as BrowserStack or SourceLabs.

It is important to have clear if is relevant run while tests to many browsers in the same platform. If the goal is to guarantee the e2e flow from an integrated environment, use the most popular browser to users can be enough. (ps: 80% of users use Chromer and just only 30% of users use Safari.)

From a Mobile perspective, I believe that today there are more efficient test approaches to guarantee the behaviors of the components of isolated way than using some technology base on Selenium. As per example an instrumentation-based API using Espresso. Just only using Appium for E2E critical scenarios.

READ MORE
4 upvotes·8.9K views