Functional testing a type of testing where each function is tested for its functionality. It tests whether the function works to its expectations. This type of testing involves black box testing where there is no involvement of the source code.
Each and every functionality of the system is tested by providing appropriate input, verifying the output and comparing the actual results with the expected results.