The difference between Functional testing and Non-functional testing can be found in the table given below:
Functional testing is performed to determine the system behavior as per the client functional requirements.
Functional testing is performed first with the help of Manual and Automation testing tools.
It is easy to perform manual testing as client requirements are the input in functional testing.
"Functional testing is of following types:
• Unit Testing
• Smoke Testing
• Sanity Testing
• Integration testing
• User Acceptance testing
• Regression testing"
Non-functional testing is the process to determine the system performance as per client expectations
Non-functional testing is performed after functional testing with the effective tools required.
It is difficult to perform manual testing as scalability, reliability, speed and other performance parameters are input in non functional testing.
"Non-functional testing is of following types:
• Performance testing
• Load, Stress, Volume Testing
• Security testing
• Compatibility testing"