54

Top CI/CD Tools for your Android and iOS projects

 5 years ago
source link: https://www.tuicool.com/articles/hit/eiuUr2f
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
YZ7zuuM.jpg!web

There are several top-notch CI/CD tools for your Android and iOS projects out there. And all these CI/CD tools will do the job one way or another. That is also true for the highly popular open-source CI tool Jenkins. Yet, the maintenance side of free Jenkins can soon turn into an expensive nightmare! You need deep pockets and time to support the luxury of high customization and feature-richness — all extremely valuable resources that could be put into better use.

Therefore, it might be a good idea to try out different CI/CD tools and to keep an eye out for possible Jenkins alternatives that may boost your Android and iOS application development drastically.

So, let’s dig in. We decided to take Jenkins alternatives for a spin. Find out what are these CI/CD tools and their top features, integrations, clients and pricing. On top of that, we tested all these Jenkins alternatives ourselves to find out which one of these reduces the hassle the most and we’ll give you the results in real numbers!

Check out what we learned about continuous integration for mobile apps analyzing 75k CI/CD builds.

Taking CI/CD tools for the spin: what and how

Before we start, please note that the purpose of this article is not to recommend a particular service rather than provide mobile app developers an extensive overview of existing Jenkins alternatives on the market. Every project is unique in its own way and these are our results in current time frame with one specific project.

So, what did we do?

First, we took a basic app and decided to test it on the Jenkins alternatives out there. The lucky chosen app was Pepperoni , “a free and open-source blueprint to kickstart your mobile product development for Android and iOS, powered by React Native” and empowered by Futurice .

Second, we took this list of top CI tools for mobile with the addition of Circle CI and Travis CI and tested them with the Pepperoni app to to find out how they will handle the challenge.

Now, let us introduce you the CI/CD tools for mobile that we took for a test drive.

Top CI/CD tools for mobile to consider

Nevercode.io

VzyUru7.png!web

Nevercode is a cloud-based continuous integration tool for your Android, iOS, React Native, Cordova, Flutter and Ionic projects. Setting up a new project is dead simple and all projects are configured automatically. Nevercode builds your projects for every commit and runs all your unit & UI tests. Automatic build distribution keeps your team and clients up to date with the latest state of your apps.

Top features:

  • Automatic configuration and setup
  • Integrates with Bitbucket, GitHub, GitLab and any other source repository
  • Concurrent builds
  • Custom unit and UI tests using emulators or actual hardware
  • Test automation with Firebase / Amazon Device Farm and test parallelisation
  • Automatic publishing to Google Play, iTunes Connect, HockeyApp, Crashlytics, TestFairy
  • Scheduled builds
  • Data encryption for all sensitive data
  • First-class customer support
  • Easy-to-understand documentation

Integrations:GitHub, BitBucket, GitLab, fastlane , Slack, email, HipChat, AWS, Firebase Test Lab, TestFlight, Crashlytics, Cocoapods, TestFairy, Relution, Jasmine, HockeyApp, iTunes Connect, Gradle Build Tool, Espresso, Robotium, Robolectric, Arma, Protractor etc.

Clients:Channel 4, Toyota, BMW Group, Walmart, Mooncascade, Sainsbury’s, ingogo, Thunderhead and more.

Our experience with Nevercode CI/CD tool:Nevercode was created with mobile in mind and it really shows in every aspect of the product. Building a basic RN app for Android and iOS on Nevercode from scratch takes about 7 minutes, which is a solid result for a mobile CI/CD (for this test project, we configured build settings automatically). Unlike many other CI/CD tools in the list, Nevercode is highly customizable to clients’ needs, which makes them a flexible CI/CD partner.

However, customizability comes with a price, making Nevercode more suitable for fast-growing and big companies that value fast results.

ryMvaiB.png!web

Pricing:From $99 per month / paid annually

Try Nevercode for free

Travis CI

BZjqQja.png!web

Travis CIis another highly popular hosted, distributed continuous integration service used to build and test software projects hosted at GitHub. While not focusing strictly on mobile needs, it’s extremely popular among open-source projects as it does not charge them any fees. The Travis CI hosted server enables projects to be tested in different environments, on different machines running different OSs, by different developers.

Top features:

  • Free for all open-source projects
  • Easy to set up and configure
  • Live build setup
  • Pull request support
  • Pre-installed database service
  • Auto deployments of passing builds
  • Extended API and CMD tools for custom management
  • Extensive community for discussing and providing tutorials
  • TravisPro for private repositories and personal support
  • Extensive documentation

Integrations:GitHub, Heroku, AWS CodeDeploy, Slack, fastlane , TestFairy, Testmunk, Sauce Labs etc.

Clients:Zendesk, Heroku, BitTorrent, Moz, Engine Yard

Pricing:Free for open-source plans and first 100 builds, paid plans for everything else

Our experience with Travis CI/CD tool:Travis CI is an excellent CI/CD tool, but maybe not the best one for your mobile app projects. There are several key aspects missing for seamless mobile app development. First of all, Travis CI does not support BitBucket or GitLab projects. Second, it’s lacking build settings automation, automatic distribution and automatic code signing, which can create a lot of headache that could be prevented with a CI tool dedicated for mobile apps. For example, to configure build settings automatically, Travis needs YAML config in 60 lines. It also seems that Travis doesn’t store build artefacts and there’s limited information available on how to publish apps to iTunes Connect / Google Play / HockeyApp / Crashlytics / Relution. Last but not least, there seems to be no way to use Xcode beta versions.

3ayeyeY.png!web

Try Travis CI for free

Circle CI

QvUVnay.png!web

Circle CIis the next cloud-based CI/CD tool in our list. It enables you to automate your build, test and delivery process. The mission of Circle CI is to give people everywhere the power to build and deliver software at the speed of imagination. To make that happen, Circle CI provides quick setup, integration with a range of tools, support for all test frameworks and the ability to easily configure the entire setup. Ultimately, it allows users to ship healthy code faster, safely and at scale.

Top features:

  • Sleek and intuitive UI
  • Up to 16-way parallelization
  • Ability to test many code pushes concurrently
  • Supports Docker
  • Comprehensive cache dependencies
  • All distribution also via fastlane

I ntegrations: Bitbucket, GitHub, GitHub Enterprise, Sauce Labs, Coveralls, Heroku, Docker, Firebase, Compose, Slack, Jira, HipChat etc.

Clients:Facebook, Segment, Kickstarter, Spotify, GoPro

Pricing:Pricing is per container. The first container is free. Every additional container is $50/month.

Our experience with CircleCI CI/CD tool:Like Travis CI, CircleCI is not tailored for mobile needs and this will result in some difficulties when you want to build quality apps fast. First, it’s quite hard to understand how to set up and configure everything, but after some struggle we found out that CircleCI does provide automatic setup to some extent. While CircleCI provides tons of integrations, making users’ work environment truly flexible, setting up a workflow is a time-consuming project. For this React Native project, we didn’t manage to finish the setup. On the bright side, CircleCI detects and runs fastlane to build an app automatically, which is extremely nice!

Bitrise

Qna2muI.png!web

Bitriseis another gem in the Jenkins alternatives list. A continuous integration and delivery tailored for mobile needs with 180+ of integrations for your favourite services. A great productivity tool for your iOS, Android, Xamarin, Ionic, Cordova and React Native mobile app development.

Top features:

  • Flexible configuration and intuitive setup
  • Helpful setup wizard
  • Intuitive UI and easy to use
  • Customizable workflows
  • Hosted environment
  • Automatic code signing
  • Smart caching done fast
  • Security with no compromise
  • Firebase Test Lab integration
  • Fast and reliable emulators

Integrations:iOS, Android, React Native, Android SDK, Apache Cordova, Xamarin, GitHub, Bitbucket, GitLab, Xamarin Test Cloud, Slack, Amazon S3, Ruby, JIRA, gulp, Gradle, Crashlytics, TestFlight, Codecov, fastlane , Flowdock, Raygun, TestFairy, AWS Device Farm, HipChat, Twilio, HockeyApp, Parse, Mailgun, Coveralls, Bower etc.

Users:Virgin Mobile, TNT, Zeplin, Duolingo, Starva, Wunder and more

Pricing:Free. Paid plans start at $36/month per concurrency

Our experience with Bitrise CI/CD tool:Bitrise is definitely an Android & iOS friendly CI/CD tool. The extensive list of integrations is Bitrise’s true superpower. All workflow steps are open-source so that you can modify and share them as you like, or create new ones and it integrates with the services you love to use, making it customizable for every case.

However, being open-source has a downside. Bitrise offers no support, so you will have to solve any errors you might face with the help of the community.

AZf2Yzj.png!web

Try Bitrise for free

Visual Studio App Center

UjUVfan.png!web

Microsoft’s Visual Studio App Center is a recently released upgrade of HockeyApp that groups together multiple services commonly used by mobile developers into a single integrated product. You can build, test, distribute and monitor your mobile apps. It allows you to create an installable app package automatically with every push to your repository. Visual Studio App Center supports GitHub or Git repos on Bitbucket and Visual Studio Team Services (VSTS) with no additional build hardware required.

Top features:

  • Cool UI and UX
  • Flawless virtual machines
  • SDK for diagnostic & analytics
  • Automated UI tests on more than 400 unique device configurations
  • Open-sourced SDKs and APIs

Integrations:GitHub, Bitbucket, Visual Studio Team Services, Slack, Microsoft Teams, Appium, Espresso, XCUITest, Apple’s App Store, Google Play, Microsoft Intune, Cocoapods

Clients:Quora, Fox Sports, Highrise, Good Food, FreshDirect, Ring

Pricing:Starting from +$40/month per build concurrency

Our experience with Visual Studio App Center CI/CD tool:

On a first glance, the configuration process is easy and automatic, but this might turn into a disadvantage for more complex apps as some critical options are missing. For example, it’s not possible to change the target configuration for iOS build. Furthermore, for each project and workflow, one has to set up different projects from zero. It’s also missing Xcode beta versions.

All this gives an impression that Visual Studio App Center is not the best solution for big projects…yet.

YzuuQfF.png!web

Wrap-up

If you’re looking for Jenkins alternatives, then you have already made the first step towards hassle-free mobile app development. Sometimes free just comes with an insanely high cost.

Our aim with this article was to dig into top CI/CD tools and give an extensive overview of Jenkins alternatives on the market. Take a look at the graph below for a summary of our results.

BbuIfun.png!web

As mentioned above, every project is different and has unique needs. Arm your developers with the best tools so they can build five-star projects faster!

RbQrEb2.jpg!web

Let us know about your experiences with Jenkins alternatives — leave your comments below!

uiiIRnB.png!web

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK