Wednesday, February 22, 2006

Estimation for Test Automation Part 1 ...

Test estimation itself is mystery or magic tool that every test and project manager is trying to master these days with very little success - I should say. Then Test estimation for Automation gets little more complicated as it involves other software - automation tool. It is like a estimating for full-fledged application development and testing project. Treat it like nothing less. Ask your manager or his/her colleague PM how they do estimation for complete project (dev and test) - Take some leaves out of their experience.

Some thoughts to get you started off :

1. Like software development project - automation also has its own similar lifecycle
a. Automation Planning
b. Test cases Analysis (= Requirements phase)
c. Automation Design (= Design Phase)
d. Coding and Unit Testing of Scripts
e. Automation builds
f. Source control and Testing, Defect management
g. Deployment on Test lab - try run - fix and re-run
h. Sign off
So be sure to factor in time for all these - just focusing on test case and their complexity is a surely leads to underestimation

2. Following are common and assumed to be factored by the PM - make sure you check whether your team is up there.
a. Required tools licenses
b. Team having training usage of QTP and some development experience
c. References like coding guidelines, Config Mgmt guidelines and other dos and donts kind of documents
d. Setting up of test environment - this is very imp. Mostly we assume that it is there and when you are starting the project you will spend more than you estimated time in getting Test environment up and running for whole group. Take this point little more serious if you are running an “offshore-onsite” type of automation.
e. Framework - supporting structure other than the tool - decide whether you need it or not
f. Other tools and software requirements like - VSS, Database, shared drive to keep common stuff etc

3. Test cases - you need to look at test case complexity from a different angle when you are automating. It does not help in classifying test cases as simple, complex etc. You should look it from over all development of common code perspective. Take a set of logically related test cases and think how many re-usable functions you will require - each for navigation, data input and verification. More the number of functions that a test case needs – more complex it will be for automate. Hence take more time. While estimating always consider a group of test cases not individuals. In a test case items that need to considered are - number of steps, number of inputs and number and type of verification points.

When you are asked for estimation for automation - ask for time to analyze the target test cases and then make judgment call. If you are asked to estimate in a quick and dirty way - shoot back asking - how much of error in estimation they are willing to take - 20-30%? Tell them you will refine your estimates once you have a complete look at test cases. As it happens in development you will revise your estimate after requirements (if it is allowed) - Do it after test case thorough analysis....

Rest in part 2 ...



Sanjay Kumar said...
This comment has been removed by a blog administrator.
Sanjay Kumar said...

Good one, thanks for the intiative.

Syed said...

Hi Shirini,

This is really nice article to start with the Estimation for Automation. Where can i get your second release, i mean PART-2


kuldeep said...

Dear Shirini,

This is good one but still we have left lots of thing to be incl. at the time of estimation but i will discuss the same after you Part-II

Thank you,

Kuldeep Singh Sandhu

kuldeep said...

Dear Shirini,

This is good but still we have to take care of lots of other things while estimating an automation project, we will discuss the same after you part-II release.

Thank You,

Kuldeep Singh Sandhu

Anonymous said...

I am just another of those guys who love reading blogs but don't blog themselves.

Nice blog.. I just subscribed to your blog.

Anonymous said...

Thanks for sharing the info, the article is just a initiator, but doesn't really talk any tool or hints on estimation really. It would add weight-age if you could add more stuff.

Viru Kulkarni.