A sample text widget

Etiam pulvinar consectetur dolor sed malesuada. Ut convallis euismod dolor nec pretium. Nunc ut tristique massa.

Nam sodales mi vitae dolor ullamcorper et vulputate enim accumsan. Morbi orci magna, tincidunt vitae molestie nec, molestie at mi. Nulla nulla lorem, suscipit in posuere in, interdum non magna.

What is the difference between static and dynamic testing?

Static testing and dynamic testing are one of the frequently discussed testing methodologies. Dynamic testing and static testing form two major and extremely important categories of software testing methodologies. Most of us are clear with the meaning of the terms “static” and “dynamic”. Keeping in mid the meaning of these terms, it is very easy to define the terms “static testing” and “dynamic testing”. Static testing and dynamic testing are also known as “static analysis” and “dynamic analysis” respectively. We shall describe these two terms simultaneously in the form of a list of differences between them. So while understanding these two methodologies you might as well as be able to compare them also.
1. Static means stationary, not moving or not in use. So from the term itself we deduce the definition of the static testing i.e., static testing is a testing methodology which practically does not involves the software system or application during the testing process. The term “dynamic” means moving or in use. So for dynamic testing or analysis also we deduce that it is a type of testing which practically involves the software system or application in the testing process.
2. Static testing is all about the static behavior of a software system or application whereas the dynamic testing is concerned about how the software system or application performs dynamically i.e., its dynamic behavior. It usually involves testing of the reflexes of the system i.e., the way the software system responds or reacts towards the variables that are dynamic in nature.
3. Static testing makes use of static variables i.e., the variables which are not suppose to change with time and thus are constant. The dynamic testing makes use of the dynamic variables which are not constant but change with the time along with the execution of the program. It is not necessary that the values should compulsorily change during the execution. The point here is that the dynamic variables have the tendency to get modified whereas the static variables do not possess this tendency or property.
4. If one wants to perform a dynamic test for any program, he/ she need to compile the software, run it and work with it. Dynamic testing involves extensive work of inputting data values to the variables as well as the checking of the output and whether or not it is up to the expectations of the programmer. Like in every other testing methodology here also the actual program output is checked against the desired program output. At the end the Input and output data is checked for validation of the software. Many methodologies have been developed for dynamic testing. Few have been listed below:
Unit tests
System tests
Integration tests and
Acceptance test
Dynamic testing involves a detailed workout. On the other hand, static testing is way too lenient when it comes to the testing efforts. It is not so extensive and is typically involved with the determination of the sanity of the code, document or algorithm. It is pretty much involved with the syntax checking of the program code and manual review of the documentation or the source code to find errors and bugs. This is the basic aim of static testing.
5. Dynamic testing forms an extremely important part of the validation process in contrast to the static testing which forms a major part of the verification process.
6. Functional test techniques or black box testing techniques as they are called, are what are employed by the Dynamic testing process. White box testing techniques or structural test techniques constitute the static testing.

Introduction to Software Testing Testing Computer Software, 2nd Edition Software Testing Foundations

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>