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
What is Web architecture that are followed while doing online project and tell the samples of architecture?
What is date driven testing?
Define what is a critical bug.
tell me some major and minor defects in ur net banking project?
What is a defect age?
which test strategy your are fallowing in your company?which documents u r using in software development life cycle?
What is mean by incident logging system ?
Which testing model is best as per your understanding, and why?
what are the status have in QC(Test Management Tool). and how you report?
Password is having 6 digit alphanumeric then what are the possible input conditions?
Did any one completed CSTE certiication? can u send sample question papers? how to apply that? pls send it to my mail id - dsnathi@gmail.com THANKS IN ADVANCE
Can you explain tpa analysis?
i need manual testing interview questions for 2+ experience plzz help me..
What is the main use of preparing traceability matrix and explain the real time usage?
what is test strategy,test plan and test policy?Does anyone have dummy documents or any links that gives more idea about these?I am a beginner...interested in learning more abt testing.plz help and encourage me........!