Functional testing is a type of test aimed at determining whether each application feature works according to software requirements. Each function is compared with the relevant requirement to determine whether its output is consistent with the end user's expectations. At the end of functional testing, there is software that integrates smoothly with consistent user interfaces and business processes with a consistent API.