What is non-functional testing?

Answer Posted / vj

Software application has several Quality Properties like Functionality, Scalability, Recoverability, Availability, Security etc. 'Software Systems Architecture: Working with Stakeholders Using Viewpoints and Perspectives', a book by Rozanski is very useful. Testing any Quality Property other than Functionality can be called as 'Non-Functional' Testing.

Non-Functional Testing is more technical than functional testing in that, it is performed on the infrastructure(servers/networks etc) within the environment rather than application as in functional testing.

We can test servers, databases, network components, messaging etc. The important point to remember is, these tests are performed to support Functionality of the application - because end users will not see the Non-functionality of the application other than when system performs slowly/ someone hacked etc. They only work with functionality of the system and it is their priority but Architecture contains not only functionality but also other qualities and hardware to support such functionality.

Servers are tested for resilience and availability defined in Operations Requirements, Service Level Agreements(SLAs), for Capacity Management to accommodate number of Users/Volumes of traffic defined in the requirements, for endurance.
Alerting and Monitoring for component/system failures, breaching resource threshold levels - these will be useful in Operations.
Logging, Log Shipping(or Rotating), Audits to make sure every user activity is logged and can be audited - This is done as part of conformance as well as understanding if something goes wrong in the system, we know exactly what hapenned.
Network Components within the environment/Architecture to determine that there are no Single Point of Failures and no data loss during failure conditions in live. These tests can be linked through to Alerting and monitoring and also to Auditing.
Databases for Backup and Restoring - several backup techniques available depending on the requirements in Operations.
Disaster Recovery is another type of Non-Functional test where entire Data Centre( if the architecture is data centric) is failed over to secondary data centre and operated from secondary site without impacting Business/functionality in live.

Non-Functional testing can be done in parallel with Functional Testing depending on Test Environments availability as well as non-intrusive to other testing types.

Just like Functionality, there are few tools available for Non-Functional Testing as well.
For example,
LoadRunner for Testing Scalability(Load, Stress, Soak).
Backup and Restore/Recovery - Recovery Manager (RMAN) is a built-in Backup and Recovery tool in Oracle
Disaster Recovery is mostly manual but some of the processes can be automated.
Security - There are hundreds of tools Open source tools available for Security Testing - have to be very careful when trying these out.
Monitoring and Alerting - There are number of open source tools.

Hope this will be helpful


VJ

Is This Answer Correct ?    0 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What is the difference between Functional testing and Unit Functionality testing?

1775


What is CVS and why it is used?

1633


hi friends i recently finished testing course in hyderabad.now am looking for a job in uk.i need help about the projects in interview point.can any one explain me abt banking project or credit card.like what are the problems faced in u r last project etc.

1628


Difference between smoke and sanity testing

1551


wht is Manual Testing Frame work

1876


Can you explain a pair-wise defect?

905


What do you understand by usability testing?

861


What is decision table testing?

853


how can we do database testing. In database testing we verify the data integrity and data validation. how can we do testing of Index, triggers, views, ransactions,cursors etc

1685


what is the testing approach for windows Explorer(Not IE Explorer)

2515


Please can any one tell me 1).Types of reports 2).Types of Meetings.

1539


if yahoo ceo asks you to do performance testing for yahoo site, what are the inputs you ask from them?

1883


Write positive and negative test cases for forgot password?

4640


What is your Approach when you find 10 Sev-1 bugs in 50 test cases?

2264


write testcases for open dialogbox

1750