Category Archives: Testing

A Look Back at 2012 Software Screw Ups!

The New Year is already off to a great start here at Solano Labs with new features and product upgrades getting ready to roll out.  With the start of the New Year we also decided to take a look back at the year that was and ask as a company “What have we learned?” and […]

1 Comment

Usability Enhancements to the Tddium CLI

We’re happy to announce some changes to the “tddium” command — the main CLI interface to Tddium. To pick up the changes, “gem update tddium” to get version 1.4.1 or later. Watch the video tour: 1. “tddium run” – Automatic Suite Setup and Testing TL;DR: “tddium run” automatically creates a suite (setup for CI) for […]

Leave a comment

When Do You Commit?

Git repositories hold a wealth of interesting metadata in addition to the code itself.  The number, frequency, authorship, longevity, etc. of commits  reveals a great deal about software and its development.  Depending on the content of commits and commit messages you may be able to infer the life cycle of software defects: when are bugs […]

Leave a comment

Tests are Part of your Product

Check out the slides from my Railsconf 2012 Lightning Talk on Speakerdeck: I’ll be expanding on these concepts and sharing my thoughts on how developer-written tests fit into a strong engineering culture over a series of blog posts in the next weeks.  Stay tuned!

Leave a comment

Installing Atexit Handlers On Module Load Considered Harmful

A common idiom in Ruby testing frameworks is the use of at_exit as a way to schedule interesting work. I am not a fan — it is an idiom that is ripe for abuse. The C library’s atexit(3) function that inspired Ruby’s at_exit function was originally intended to allow the registration of handlers to tear […]

Leave a comment

Code Coverage

Here at Solano Labs we believe in the importance of measurement.  This philosophy applies equally to the realms of performance and quality.  The fact is, even skilled  programmers are often wrong when they rely on their intuition to tell them where the slow path in their code is or where the technical risk is.  New […]

Leave a comment

Filesystems Directory Entry Order and Reproducible Testing

File systems are a ubiquitous abstraction in computing: they provide a natural way to manage raw storage and provide a mapping from file names to stored objects. Frequently we can leave the messy details of semantics to the poor soul implementing the file system.  The basic interface is very simple: a file system consists of […]

Leave a comment

RabbitMQ, CouchDB, Build Controls & CCMenu

Update: CCMenu can now be configured from your organization’s chat notifications configuration dialog. Happy Holidays, everyone! Tddium’s been open to the public for a month now, and we’ve seen great response and growth we can be proud of!   Tddium has run over 750k tests, with usage accelerating every day. The Tddium elves have been hard […]

Leave a comment

Cucumber and Resque

Most web sites end up needing some sort of background job queue to process requests that don’t belong on the critical path.  In the Ruby on Rails world the two most common are Delayed Job and Resque.  Writing tests for either is pretty straightforward with cucumber if you have your relational database (delayed job) or redis […]

Leave a comment

Tddium Launches (with Riak and Spinach support)!

We’re proud to announce that Tddium is open to the public!   Read more in our first official press release. If you’re not already a Tddium user, sign up for a free trial at, or install the Heroku Add-On. Even as we were putting the finishing touches on our launch, we added support for: Testing […]

Leave a comment