Non-Functional Testing
What is Non-Functional Testing?
Non-Functional testing is the type of software testing to test non-functional requirements such as:
- is software application reliable?
- can it take X amount of load?
- how well, it will perform when the user is trying to perform similar action?
- how is the usability of the application?
- does it follow security standards and compliance?
Non-Functional Testing Parameters
Security
Security testing parameter defines how secure the software application is and whether is it designed in such a way as to safeguard against international and sudden attacks from internal and/or external sources.
Reliability
This parameter evaluates how well the system will perform in the case of continuous usage without failing.
Scalability
This parameter evaluates if the system is scalable meaning when there is high demand system should be scalable to process it.
Availability
This parameter evaluates if the system is available and able to serve the request all the time furthermore downtime is minimum.
Survivability
This parameter evaluates if the system runs smoothly and can self-heal in the event of a malfunction.
Reusability
This parameter evaluates if the part of the system can be used with another system.
Efficiency
This parameter evaluates if the system can handle capacity, quantity, and response time.
Usability
This parameter evaluates if the system can be used with ease and all the required functions can be accessed without any confusion and the user journey is simple and self-explanatory.
Interoperability
This parameter evaluates if the system/interface can work well when interacting with another system.
Flexibility
This parameter evaluates if the system is flexible enough to run with various software and hardware configuration.
Portability
This parameter evaluates if the system can shift from its existing software or hardware configuration.
Types Non-Functional Testing
Following are some of the Non-Functional testing types:
Test Cases Examples of Non-Functional Testing
Performance Testing
- All the page should load within 5 seconds.
- User should be able to Login during peek hours (e.g. Thanksgiving Day)
- System should be able to process 100K orders.
Compatibility Testing
- Software application should be accessible from all the Web browser.
- Software application can be installed on all types of Windows and/or Mac machines.
- Media can be played on all the browsers.
- User should be able to upload Avtar from all the Mobile devices.
Security Testing
- User is not able to do JavaScript/HTML injection.
- User is not able to path traversal.
- User is not able to access system without valid authentication.
- User is not able to use the secure token more than once.
Accessibility Testing
- Images on web page should have alt tags.
- User is able to access the application using mouse or keyboard.