Term
| What is Non-Functional Testing? |
|
Definition
Non-functional testing is defined as a type of Software testing to check non-functional aspects (performance, usability, reliability, etc.) of a software application. It is designed to test the readiness of a system as per nonfunctional parameters which are never addressed by functional testing.
An excellent example of non-functional test would be to check how many people can simultaneously login into a software.
Non-functional testing is equally important as functional testing and affects client satisfaction. |
|
|
Term
| Objectives of Non-functional testing |
|
Definition
Non-functional testing:
Should increase usability, efficiency, maintainability, and portability of the product.
Helps to reduce production risk and cost associated with non-functional aspects of the product.
Optimizes the way product is installed, setup, executed, managed and monitored.
Collects and produces measurements, and metrics for internal research and development.
Improves and enhances knowledge of the product behavior and technologies in use. |
|
|
Term
| Characteristics of Non-functional testing |
|
Definition
Non-functional testing should be measurable, so there is no place for subjective characterization like good, better, best, etc.
Exact numbers are unlikely to be known at the start of the requirement process.
It is important to prioritize the requirements.
Ensure that quality attributes are identified correctly in Software Engineering. |
|
|
Term
| Non-functional testing Parameters |
|
Definition
|
|
Term
|
Definition
| The parameter defines how a system is safeguarded against deliberate and sudden attacks from internal and external sources. This is tested via Security Testing. |
|
|
Term
|
Definition
| The extent to which any software system continuously performs the specified functions without failure. This is tested by Reliability Testing. |
|
|
Term
|
Definition
| The parameter checks that the software system continues to function and recovers itself in case of system failure. This is checked by Recovery Testing. |
|
|
Term
|
Definition
| The parameter determines the degree to which user can depend on the system during its operation. |
|
|
Term
|
Definition
| Stability is defined as the ability of the product to continue to function, over time and over its full range of use, without failing or causing failure. |
|
|
Term
|
Definition
| The ease with which the user can learn, operate, prepare inputs and outputs through interaction with a system. This is checked by Usability Testing. |
|
|
Term
|
Definition
| The term refers to the degree in which any software application can expand its processing capacity to meet an increase in demand. This is tested by Scalability Testing. |
|
|
Term
|
Definition
| This non-functional parameter checks how a software system interfaces with other software systems. This is checked by Interoperability Testing. |
|
|
Term
|
Definition
| The term refers to the ease with which the application can work in different hardware and software configurations. Like minimum RAM, CPU requirements. |
|
|
Term
|
Definition
| The flexibility of software to transfer from its current hardware or software environment. |
|
|
Term
|
Definition
| It refers to a portion of the software system that can be converted for use in another application. |
|
|
Term
| Non-functional Testing Types |
|
Definition
Performance Testing Load Testing Failover Testing Security Testing Compatibility Testing Usability Testing Stress Testing Maintainability Testing Scalability Testing Volume Testing Security Testing Disaster Recovery Testing Compliance Testing Portability Testing Efficiency Testing Reliability Testing Baseline Testing Endurance Testing Documentation Testing Recovery Testing Internationalization Testing Localization Testing |
|
|