Continuing our modest tradition of publishing an annual report on Ruby versions used for private projects on Semaphore, we’re presenting you with the results for 2015.
Category Software Engineering
Getting Started with Minitest
What is Minitest? Minitest is a testing tool for Ruby that provides a complete suite of testing facilities. It also supports behaviour-driven development, mocking and benchmarking. With the release of Ruby 1.9, it was added to Ruby’s standard library, which increased its popularity. Even though at first it gives off the impression of a very […]
Behavior-Driven Rails 5 API for an Ember.js Application
Test Driving an Ember Application Welcome back! If this is the first tutorial on Ember.js you are reading on Semaphore Community, it’s recommended that you first read Part 1, where we laid the groundwork with Ember and created some client-side models. In this tutorial, we’re taking a little break from Ember and looking at building […]
Setting Up a BDD Stack on a Django Application
Introduction This tutorial will guide you through installing behave_django and FactoryBoy to set up a BDD stack for a Django application. For this purpose, we will create a simple login form as a base for developing BDD tests. BDD puts the user at the center of your tests. It is an increasingly popular method that […]
Introduction to Verifying Doubles in RSpec
Introduction Testing is probably one of the most popular topics in the Rails community today. This is because we are yet to get to the point where testing has the same wow factor like the other parts of Rails. The problem with testing and writing Rails code is that we canβt quite get the separation […]
On Bootstrapping a New Product
This time we had the pleasure of talking with Pedro Pereira Santos, team leader at Rupeal, a Portuguese company that has two completely bootstraped products behind them.
BDD Testing a Restful Web Application in Python
Introduction Behaviour-driven development allows you to describe how your application should behave, and drive the development of features by adding new tests and making them pass. By clearly describing how your application behaves in different scenarios, you can be confident that the product delivered at the end meets the requirements you set out to deliver. […]
Setting Up an End-to-End Testing Workflow with Gulp, Mocha, and WebdriverIO
Introduction Manual testing is usually slow, tedious and error-prone, which is why end-to-end testing is important β we need a way to automate testing across different browsers and platforms. In this tutorial, we will learn how to set up end-to-end testing with Selenium and write a simple test checking if the page title of our […]
How to Deploy a Ruby on Rails Application to Elastic Beanstalk with Semaphore
Introduction With AWS Elastic Beanstalk, you can quickly deploy and manage applications in the AWS cloud without having to worry about the infrastructure that supports those applications. AWS Elastic Beanstalk automatically handles all the details of capacity provisioning, load balancing, scaling, and application health monitoring. This article will explain how to set up continuous deployment […]
Getting Started with Behavior Testing in Python with Behave
Introduction Behavior testing simply means that we should test how an application behaves in certain situations. Often the behavior is given to us developers by our customers. They describe the functionality of an application, and we write code to meet their specifications. Behavioral tests are a tool to formalize their requirements into tests. This leads […]
Testing Ansible Roles on Multiple Operating Systems with Docker and Semaphore
Introduction In a previous article, we wrote about testing Ansible roles directly against Semaphore. This is great when you are targeting the same operating system as your continuous integration server, but what to do if you you need to target other operating systems as well? This is where Docker comes into play. Docker allows you […]
Diamond Kata – TDD with only Property-Based Tests
The Diamond Kata is a simple exercise that Seb Rose described in a blog post on recycling tests in TDD. Seb describes the Diamond Kata as: Given a letter, print a diamond starting with βAβ with the supplied letter at the widest point. For example: print-diamond βCβ prints A B B C C B B […]
Test-Driving Ember.js Models
Introduction Being a developer, you probably own a lot of computer books. In this post, we’ll get started by building an application to store our books. We’ll create a new application using Ember.js CLI and use TDD to fully test our application. We’re going to be building a simplified version of the application DevBookcase. While […]
A Hands-On Introduction to ScalaTest
Introduction You have to eat your vegetables to grow and become stronger, βcause one day youβll have to program in Scala – moms always say. We donβt pay too much attention to what they’re saying until we have to face the challenge. When you have no background in Java, programming in Scala can be easier. […]
Fine-Grained Control Over Chat Notifications
You can now choose to be notified only after failed builds and deploys, reducing noise in your channels, rooms, and inboxes when continuous delivery…