Continuous Integration for Rails 6 with Semaphore, Travis and Coveralls Part 2

Travis CI

Travis CI is also a continuous integration tool like Semaphore which is used mostly with Github and Bitbucket. Let’s get right into the setup.

Coveralls

Coveralls shows your test coverage in detail which is quite useful for Test-Driven Development. Test coverage is defined as a method that determines if our test cases are actually covering the code and how much code is exercised when we run those test cases. With test coverage, we can determine where there are gaps in requirements and how many tests are executed. Coveralls shows your coverage in percent and can show which line of codes are not being tested. Yes! It checks every line of code in the application.

Integrate Coveralls with Semaphore

It is very simple to integrate Coveralls with Semaphore, you only need to define an environment variable before running your task and that will be Coveralls Token for the repo. You can get your token from the details section of the coveralls.

Semaphore Classic
Semaphore 2.0

Integrate Coveralls with Travis CI

Travis integration of Coveralls is also very simple, you just need to create .coveralls.yml file in the root of your project and add the configuration below;

Final Words

We have covered Semaphore and Travis CI tools and I believe it is fair to say they are very similar on basic setup and quite suitable for open-source personal projects. Continuous Integration will help developers save time and coordinate with fellow colleagues without breaking the codebase and having Coveralls connected will support Test-Driven Development with its detailed code coverage reports.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Ali Erbay

Ali Erbay

7 Followers

Full Stack Developer BDD/TDD || Ruby on Rails || React || React Native || NodeJS || Express https://github.com/kermit-klein