Functional Testing is a testing technique that is used to test the features/functionality of the system or Software, should cover all the scenarios including failure paths and boundary cases.
Functional Testing Techniques
Functional testing is performed to verify that a software application performs and functions correctly according to design specifications. During functional testing we check the core application functions, text input, menu functions and installation and setup on localized machines, etc.
There are two major Functional Testing techniques
- Black box testing
- White box testing
The following is needed to be checked during the functionality testing:
- Installation and setup on localized machines running localized operating systems and local code pages.
- Text input, including the use of extended characters or non-Latin scripts.
- Core application functions.
- String handling, text, and data, especially when interfacing with non-Unicode applications or modules.
- Regional settings defaults.
- Text handling (such as copying, pasting, and editing) of extended characters, special fonts, and non-Latin scripts.
- Accurate hot-key shortcuts without any duplication.
Functionality testing verifies that an application is still fully functional after localization. Even applications which are professionally internationalized according to world-readiness guidelines require functionality testing.
Functional Testing Process:
In order to functionally test an application, following steps must be observed
Understand the Requirements
Identify test input (test data)
Compute the expected outcomes with the selected test input values
Execute test cases
Comparison of actual and computed expected result