Functional testing - TwoGears/hakomo-guides GitHub Wiki
- The prime objective of Functional testing is checking the functionalities of the software system. It mainly concentrates on -
- Mainline functions: Testing the main functions of an application
- Basic Usability: It involves basic usability testing of the system. It checks whether an user can freely navigate through the screens without any difficulties.
- Accessibility: Checks the accessibility of the system for the user
- Error Conditions: Usage of testing techniques to check for error conditions. It checks whether suitable error messages are displayed.
- Functional testing typically involves six steps:
1. The identification of functions that the software is expected to perform
2. The creation of input data based on the function's specifications
3. The determination of output based on the function's specifications
4. The execution of the test case
5. The comparison of actual and expected outputs
6. To check whether the application works as per the customer need. - Each concrete bug is a resulting combination of a certain scenario, i.e.:
1. Actions
2. Data
3. Conditions - 3 bad test case practices:
1. Dependency between test cases
2. Poor description of the steps
3. Poor description of the IDEA and/or expected result
Each test case should be created with the thought that another person will have to execute it in the future.
Very often, when you have two or more Expected Results, you have to check for: - a certain value on the Web page and/or - a certain value in the DB and/or - a certain value in the log file. This means that you need to check both the front end and the back end of your software to determine if that test case passed or not.