There are a number of software testing methodologies, depending on the angle from which we look at the software[3]. The most common distinction is between functional testing and non-functional testing. We will now discuss what makes tests functional or non-functional, and when it is appropriate to use one type or the other.
Testing approaches
Functional testing
Functional tests try to capture the functional requirements (such as security, usability, and performance) of the software being tested[4]. The requirements are taken from the specifications of the software component.
Typically, functional testing involves the following steps:
- Identifying what functions and features a software component has, based on the requirement...