To Boldly Test Where No One Has Gone Before
February 15, 2019
Lately, I’ve been reading a fresh crop of "TDD is terrible" posts. Here's my counter argument: Test Driven Development is "liberating." Here's how I use TDD as a design tool.
Do Not Push to Red Builds
July 8, 2017
There's a pattern to disasters: When you examine the post mortems, its not just one failure, but a cascade of multiple failures that overwhelm the system's safety features. Pushing to a red build risks piling one failure upon another.
Timecop Time and Database Time
June 8, 2014
Timecop is a great addition to your testing toolbox, but if you’ve ever tried to use Timecop to interact with a database, and then got the most mysterious of existential errors:
When You Need a Rabbit, Spec It
February 7, 2014
On my current project, we're using RabbitMQ. It's a bit of infrastructure that has to be present, and if it isn't, our integration tests will fail with mysterious error messages. We want our tests to be informative, so let's write a test that asserts that we have the requisite infrastructure in place.
Speed Up Your Integration Tests with a Jig
February 7, 2014
If you've written enough integration tests (with Capybara et al.), you must have noticed how much time your tests spend just logging into your web app. Even if it takes 1 second each time, it starts to add up. Here's a solution that I've written several times, now. I create a test "jig" that allows me to authenticate into my application with a single
Sencha Touch BDD - Part 5 - Controller Testing
May 18, 2013
Sencha Touch BDD - Part 4 - PhantomJS
May 10, 2013
Part 3 added
Sencha Touch BDD - Part 3 - Testing Views and Mocking Stores
May 5, 2013
Sencha Touch BDD Part 2 -- Unit Testing Models
April 26, 2013
method_missing Hazardous to Your Module?
February 22, 2013
We built an(other) object factory module for our current project and it looks a lot like all the others: After a while, we noticed that the
createmethods were all exactly the same. Time for some dynamic refactoring!
From Customer Requirements to Releasable Gem
May 12, 2012
One of the many pleasures of working at Pivotal Labs is that we are encouraged to release some of our work as open source. Often during the course of our engagements, we write code that might have wide-spread use. Due to the nature of our contracts, we can not unilaterally release such code. Those rights belong to the client. And rightly so. So, it is an even greater pleasure when one of our clients believes in "giving back" to the community, as well.
When to do User Acceptance Testing?
November 18, 2010
A former client asked:
"What does Scrum say about User Acceptance Testing? I am wondering if it should best be done within 24 hours of delivery, or at the end of a sprint..."