Static and Dynamic Testing both have same objective i.e. to find the errors but they are quite different in applying them.
We do static testing on written code, SRS, FRS and find mistakes in them. While we do dynamic testing by execution the code. In static testing we don’t execute the code rather we verify code itself like syntax errors, logical errors etc.
Static Testing is also called as Verification while Dynamic testing is also called as Validation.