Take the 2-minute tour ×
Software Quality Assurance & Testing Stack Exchange is a question and answer site for software quality control experts, automation engineers, and software testers. It's 100% free, no registration required.

Some say that testing hours should be less than development hours when estimating a development project. But I don't fully agree with this. (take an example of web application with shopping cart).

share|improve this question
    
It kind of depends on the complexity of the application under test. –  MichaelF Aug 11 '11 at 10:29
add comment

3 Answers

up vote 5 down vote accepted

There's no inherent preset relationship between development time and testing time. And there's no inherent preset relationship between development/test staff ratio, and development/test time ratio.

The time required to test something is contextual - it depends on factors that may have little or nothing to do with how long it took to develop that feature.

Also consider:

  • what counts as Development?
  • what counts as Testing?
  • If we were going to perform regression testing anyway, does that count as "zero" additional testing hours?

http://strazzere.blogspot.com/2010/04/what-is-correct-ratio-of-development.html

share|improve this answer
    
Hello Joe, Whenever i feel that i still new informations & thoughts on certain testing concepts, i always never fail to visit ur blog. But somehow i missed this post. I was expecting just answers, but i got more than i expected. ie. examples you mentioned. Thanks for time and the web link. –  Balaji Kothandaraman Aug 11 '11 at 12:43
    
Thanks for the kind comments, Balaji. –  Joe Strazzere Aug 11 '11 at 16:42
add comment

As Joe and Lyndon have said, it depends.

Some of the factors that impact how much test time will be needed relative to development time are:

  • Is the development a green fields project or can the changes potentially affect legacy functions? In the case of the latter, there's a lot more testing time needed than the former.
  • Are there regulatory requirements attached to the development? In my workplace, tax compliance and PCI compliance are big issues. Test time for these often exceeds development time.
  • What are the costs of application failure? As a general rule, there'll be more testing needed for anything that's going to have major costs of failure. A new website that crashes the browser isn't going to have the same cost of failure as say, a Facebook upgrade crashing the browser. If the development involves aircraft software or medical software, expect very high testing time requirements.
  • How much developer testing is there? I've found that testing load for development in an agile, test-driven setting is much lower and usually much more exploratory than for more traditional environments.
  • How much is changing? Right now I'm spending massive amounts of time in testing due to a development environment upgrade which also required that every third party component be upgraded and much of the oldest code in the application (some of it over 20 years old and grandfathered in because of the high refactor risk and time required) to be refactored. The time cost for this may not exceed development time - but that will largely be because there won't be time to thoroughly test everything. Ideally for this case test time would exceed development time.

Those are just a few factors that can affect the balance between development and testing time, and one of the reasons I detest the formula approach.

share|improve this answer
    
+1 Good examples! A few other factors are how buggy the code from the devs is, how easy it is to fix bugs (how well the code was designed), how early stable requirements are available to test, how experienced the testers are, and how much automation is used to reduce the tester's burden after release to test. –  Ethel Evans Aug 11 '11 at 21:35
add comment

I seem to remember a great blog post about this a few years ago. I just wish I could remember who it was by or where it was.

Typically, testing time is less than development time. A lot of people say 30-40% of development time, but personally, whenever I've received only this much time, I typically feel as though I haven't done as much I should have. The actual time will always vary. Sometimes it ends up being much more than development time. This will also vary greatly depending on the approach that's been taken by the development team as a whole (including testers). If you're on a traditional project, testing time is going to be longer. On agile teams, I've found my testing time to be significantly shorter.

In the end, the answer is, it depends.

share|improve this answer
    
Oh, you're lucky! The formula where I am is 20%... Unless automation is happening, then it's 40%. Needless to say, we're always somewhat pressed for time. –  Kate Paulk Aug 11 '11 at 12:45
    
Actually, the team that I currently work on has no problems giving 1:1 or sometimes greater. We've been bitten by poor quality in the past, and spend the extra time to try to ensure that we always deliver nothing but the best. –  Lyndon Vrooman Aug 12 '11 at 1:42
    
Lyndon, that's great. It's always heartening to hear that there are places who really do give more than lip service to quality, and don't fall into the trap of letting external pressures dictate when a release goes out. It's all very well to promise a customer that you'll have feature X to them on date Y, but to deliver it half-baked always leaves me with a bad taste in my mouth. –  Kate Paulk Aug 12 '11 at 10:40
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.