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

Dynamic testing is also called dynamic analysis. It has always been a part of software testing and is basically used to explain the dynamic behavior of a software application or a program.

- Dynamic testing can now be defined as the testing the response or reaction (physical in nature) of the system to the dynamic variables ( the variables which keep changing with time and are not constant) that have been used in the program.

- To carry out a dynamic test for any program, one has to compile the software, run it and work with it.

- Working with the software involves inputting data values to the variables.

- It also involves checking the output if whether or not it is up to the expectations of the programmer.

- The actual program output is checked against the desired program output. Input and output 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

Idea of dynamic testing is typically based on testing the software during execution of the program and also during its compilation.
- Dynamic testing is totally opposite of static testing.

- The software application must be actually compiled and executed and tested as the dynamic testing is a part of validation process, which is again a part of verification and validation process.

- There are many methodologies that can be used for testing a program dynamically. If you are not comfortable with one technique, you can for the other one.

- Dynamic testing includes functional test techniques which are commonly known as black box techniques.

- They help in designing test cases which are based on the functions of the software application under test and there is no need to consider the details of the software structure.

- These techniques are used to check for input and expected output.

White box testing techniques or structural test techniques are used to check the structural design of the software application for flaws and mistakes.

Static testing can be compared in great contrast to the dynamic testing.

- Static testing can be defined as a form of software testing in which the software is not actually used.

- It is not as detailed as the dynamic testing and it is carried out to determine the sanity of the code, document or algorithm.

- It can be primarily stated as the syntax checking of the program code and manual review of the document or the source code to find the errors and bugs.

- Static testing usually used by the software developers who wrote the code in isolation and techniques such as inspections, reviews and walk through are used.

- If we look at the static testing from the point of black box testing, it involves review of specifications and requirements of the software system or application.

- Static testing forms the verification part of verification and validation process.

- Like dynamic testing, static testing can also be automated.

- Static testing involves programs to be analyzed by a compiler or an interpreter
that’s asserts the syntactic validity of the programs.

- Bugs and errors discovered during the static development are easier and less expensive to fix than later in the development cycle.

- The people who are involved in static testing are basically software developers and testers.

- During static testing you need to have a check list to ensure whether the software system or the application is keeping with the standards of the organization or not?

- These standards are basically for coding, deployment and integrating.


Popular posts from this blog



HSC Exam Time Table 2013 Arts, Commerce, Science