An Example Showing How Test Automation Saves Time and Improves Quality

with one comment

After yesterday’s post on reaching a milestone on the way to our test automation goals, I thought I would share with you an example on why test automation makes so much sense.

Imagine you have 1 developer and 1 tester.  Each feature takes 1 day to develop and 1 day to test and ship.

  • For the first feature, it will take 2 days to ship–1 day to develop and 1 day to test.
  • For the second feature, it will take 3 days to ship–1 day to develop, 1 day to test the feature, and 1 day to regression test the first feature.
  • For the third feature, it will take 4 days to ship–1 day to develop, 1 day to test the feature, and 2 days to regression test the first and second features.

For the fourth feature…you know how it goes.  By the time you get to 10 features it will take you 11 days to develop, test, regression test and ship your code.

Of course, in the real world that never happens.  In the real world, some relatively arbitrary amount of time is determined for testing based on how many new features are being added to the site.  As a result, all the previous features only get a cursory regression, or they get no regression at all.

In other words, without test automation, the more features you have, the less quality assurance that you do because it becomes prohibitively expensive to ensure complete test coverage.

Now, add test automation: it takes 1 day to develop, 1.5 days to write the tests, and 0.5 days to run tests for all of your features and ship.

  • Feature #1: 3 days to ship–1 day develop, 1.5 days write tests, 0.5 days run tests and ship.
  • Feature #2: 3 days to ship–1 day develop, 1.5 days write tests, 0.5 days run tests and ship.
  • Feature #3: 3 days to ship–1 day develop, 1.5 days write tests, 0.5 days run tests and ship.

For the fourth feature…do you see the difference here?  If you do the math, by the time you ship your 10th feature it will have taken you 30 days.  With manual testing it will have taken 65 days!  That’s right–it will have taken you less than half the time!

Or, what happens in reality is that you will spend 30 days on both approaches, and then your product will only be half as good with manual testing.

Now, I get this is a simple example, but map it out over a few months or a year or the lifetime of your web site and you’ll see what I do: test automation simply makes sense.

Written by scottporad

September 25th, 2009 at 9:00 am

Posted in Agile, Development

One Response to 'An Example Showing How Test Automation Saves Time and Improves Quality'

Subscribe to comments with RSS or TrackBack to 'An Example Showing How Test Automation Saves Time and Improves Quality'.

  1. [...] I used to write that I don’t maintain any longer.  But, since I’ve been writing about test-driven development lately, I wanted to repost it.  [...]

Leave a Reply