4 Jan 2018 · Software Engineering

    Top 10 Semaphore Posts in 2017

    5 min read
    Contents

    At Semaphore, we’re always looking for new ways to improve our continuous integration service, as well as share ideas and articles that help developers make software development and continuous delivery faster, smarter and easier.

    Last week, we published an overview of what were some of the most popular open source language versions used in commercial projects in 2017 over on Medium. Now it’s time to take another look back at 2017, and share which of our articles and tutorials attracted most attention in the previous year.

    10. Snapshot Testing React Components with Jest by Dave Ceddia

    In a magical world, we could write our code, and then verify that it works with very little extra code. Snapshot tests come close to offering this dreamy future. In this article we covered what snapshot tests are, and how to start using them with React.

    9. Stubbing and Mocking in Java with the Spock Testing Framework by Kostis Kapelonis

    When it comes to true unit tests, having a mocking framework such as Spock for Java is essential. This tutorial covers the Spock testing framework, an emerging framework that can be used to test both Java and Groovy code. Unlike Mockito that works in addition to JUnit, Spock can function on its own.

    8. Writing and Testing an Event Sourcing Microservice with Kafka and Go by Adam Pahlevi Baihaqi

    This tutorial walks you through creating and dockerizing an event sourcing microservice in Go, using Kafka as a message broker.

    7. Speeding Up Rendering Rails Pages with render_async by Nikola Đuza

    Here at Semaphore, we occasionally came across some issues with adding new code to Rails controllers. In the past, we usually resolved them by splitting controller actions into smaller actions, and rendering them asynchronously using plain JavaScript. At some point, we realised that this can be extracted to render_async, a gem for speeding up Rails pages that was created by Kasper Grubbe, and improved on by Nikola from our team. render_async loads content to your HTML asynchronously by making an AJAX call to your Rails server. Read this article to learn more about render_async and how it can help with rendering your Rails pages faster.

    6. The Cracking Monolith: The Forces That Call for Microservices by Marko Anastasov

    This post, based on our experience of scaling up Semaphore to manage tens of thousands of private CI jobs on a daily basis, attracted a lot of attention on HackerNews and Twitter. It covers how to spot the issues that can help you detect when a monolithic application is no longer optimal.

    5. Getting Started with Mocking in Python by Amos Omondi

    Mocking is simply the act of replacing the part of the application you are testing with a dummy version of that part called a mock. The benefits of mocking include increasing test speed and avoiding undesired side effects when testing. This article is an introduction to using Python’s unittest.mock for replacing parts of your system under test and improving the efficiency of your unit tests.

    4. Stubbing and Mocking with Mockito 2 and JUnit by Kostis Kapelonis

    Having three articles on mocking in our top 10 posts list shows that this is a very popular topic. This tutorial covers how to create true unit tests by mocking all external dependencies in JUnit classes with the help of Mockito.

    3. Testing Routes in Angular 2 by Matt Fehskens

    Angular 2 was a very popular topic back in 2016, and this year this trend continues. Having routes in your application gives users the ability to return to a specific point in your application just by typing in a URL. Testing routes comes with some interesting challenges. Read this article to find out how to tackle them.

    2. Testing Python Applications with Pytest by Kevin Ndung’u Gathuku

    The second most popular post in 2017 was our tutorial on getting started with using Pytest. In the larger Python ecosystem, there are a lot of testing tools. Pytest stands out due to its ease of use and ability to handle increasingly complex testing needs.

    And the most popular article in 2017 is:

    1. Building and Testing a REST API in Go with Gorilla Mux and PostgreSQL by Kulshekhar Kabra

    It shows you how to build simple and well-tested REST APIs backed by PostgreSQL in Go, using Gorilla Mux — a highly stable and versatile router.

    This wraps up our last year’s overview. We’re looking forward to see what 2018 will bring. If you’d like to follow our future posts, subscribe to our newsletter to get updates on what’s new in the world of Semaphore, including our articles and tips on continuous delivery.

    What are some of the languages, tools and skills you’d like to master in the year ahead?

    Happy building in 2018!

    P.S. Would you like to learn how to build sustainable Rails apps and ship more often? We’ve recently published an ebook covering just that — “Rails Testing Handbook”. Learn more and download a free copy.

    Leave a Reply

    Your email address will not be published. Required fields are marked *

    Avatar
    Writen by: