Tuesday 28 August 2007

Static Testing & Dynamic Testing

Static Testing :
The Verification activities fall into the category of Static Testing. During static testing, you have a checklist to check whether the work you are doing is going as per the set standards of the organization. These standards can be for Coding, Integrating and Deployment. Review's, Inspection's and Walkthrough's are static testing methodologies.

Dynamic Testing :
Dynamic Testing involves working with the software, giving input values and checking if the output is as expected. These are the Validation activities. Unit Tests, Integration Tests, System Tests and Acceptance Tests are few of the Dynamic Testing methodologies.

Q: What is the difference between static and dynamic testing?

Difference number 1: Static testing is about prevention, dynamic testing is about cure.

Difference number 2: The static tools offer greater marginal benefits.

Difference number 3: Static testing is many times more cost-effective than dynamic testing.

Difference number 4: Static testing beats dynamic testing by a wide margin.

Difference number 5: Static testing is more effective!

Difference number 6: Static testing gives you comprehensive diagnostics for your code.

Difference number 7: Static testing achieves 100% statement coverage in a relatively short time, while dynamic testing often often achieves less than 50% statement coverage, because dynamic testing finds bugs only in parts of the code that are actually executed.

Difference number 8: Dynamic testing usually takes longer than static testing. Dynamic testing may involve running several test cases, each of which may take longer than compilation.

Difference number 9: Dynamic testing finds fewer bugs than static testing.

Difference number 10: Static testing can be done before compilation, while dynamic testing can take place only after compilation and linking.

Difference number 11: Static testing can find all of the followings that dynamic testing cannot find: syntax errors, code that is hard to maintain, code that is hard to test, code that does not conform to coding standards, and ANSI violations.

3 comments:

Anonymous said...

Hi I am new to testing..

and this blog is very helpful..

thanxs

Anonymous said...

Hi,

I have gone through with this post. I'm interested to know more about Static Testing. Could you please, post regarding this topic with a boarder sense?

Thanks,
Bajrang

Anonymous said...

very nicely described thanks ya.