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 Catapult Testing in E-Learning Domain?

4641


In which all places, testing is done?One is from the server by calling server name.Can u suggest others?

1472


What are the different servers and difference between them?

1600


What is the difference between Sleep and wait in winrunner what is integration testing and types of testing present what is system testing what is data driven testing what is functionality testing if requirements are given to you then how do you write the test cases for it Account number = Ok cancel For above given form the valid account number starts from 1 to 1000 so is it necessary to input the 1,2,3 ….998,999,1000 test cases to check the conditions of valid account numbers I,e is it compulsory to write 1000 test cases for the above form

2124


What are testing techniques? What is difference between general and specific?

1611






What is application programming interface (api)?

634


What is build interval period?

1825


In manual testing, what are stubs and drivers?

657


what is your daily activities?

1653


what are the common errors while doing integration,system,functional,regression,user acceptance testing? can anybody please let me know the answers it is too urgent???

1556


What is verification in software testing?

664


Hi friends, Im an MBA Finance, 2 yrs of exp workng in Investment com, + around 2 yrs of exp in Manual testing in Finane domain. Im looking for manual testing jobs but not getting any calls, Im worried is manual tesing in finance domain do have any good scopes in future or not. Plz provide me ur valuable suggestion,so tht I can best decision to retain in this platform(manual testing). or not

1867


What is the main use of preparing traceability matrix and explain the real time usage?

726


Changes and enhancements to system?

1583


can any one send sample test cases for database testing by taking an example? also leave emailid please. thanks (very urgent)

2648