Static & Dynamic Testing
Static – Testing where code is not exercised: document specification analysis, reviews, even code itself, etc.
Can be done as Review by humans carrying out manual examination of documents or Static Analysis of the code and software models by using automation tools.
Dynamic – Kind of testing that exercises the program with some test data.
Dynamic testing is performed by executing software under test and comparing actual and expected results.