Functional Testing – Functional Testing is a type of Testing, where we test the functionality of a Product or a Software.
Functional Testing is made up of 2 words.
Functionality + Testing
So, We have to understand, what is functionality.
Functionality simply means, what functions or operations does a Software performs.
Let’s understand this with an example of an application such as Calculator.
What is the Functionality of a Calculator.
Calculator does mathematical operations such as Addition, Subtraction, Multiplication and Division, So these are the functionality of a Calculator Software.
If we test these functionality of Calculator, then we are doing functional testing of a Calculator.
Let’s take an example of one more Software Application, such as Internet Banking
What are the functionality in Internet Banking.
So, when we test these functionality, then it will be the functional testing of Internet Banking.
So, If we want to define, Functional Testing, then the definition would be
Definition – When we test the functionality of an Application, the the Testing is called, Functional Testing.
We have already seen, what is functional Testing.
If we go by definition, then functional testing is a type of testing where we test the functionality of an Application.
Non Functional Testing is exactly opposite of Functional Testing.
Non Functional Testing is a type of Testing where functionality of the application is not tested, but the other features of the application are tested.
What are the other features, Let’s see it with an example
Suppose we want to test Net Banking, and when we try to launch Net Banking Application in google chrome browser, it works well but when we try to launch Net Banking Application in Mozilla Firefox Browser, Our Application doesn’t launch and it doesn’t allow us to do anything, So, this means that our Net Banking Application is not compatible with Mozilla Firefox Browser and this type of testing is called Compatibility Testing.
Compatibility Testing is a type of Non Functional Testing, because we don’t test the functionality of Application, But we test the Compatibility of the Application.
Now, suppose if there are 100 users working on the Net Banking at the same time and the application works fine.
Then there are 500 users working on the Net Banking at the same time and the application works fine.
But if suppose there are 1000 users working on the Net Banking at the same time and the application starts working slowly, i.e that means the speed of the Application slows down, then we can say that the performance of the Application is reduced and this type of testing is called performance testing.
Let’s say that 10000 users tries to access the Net Banking at the same time and the application crashes, then we can say that the Application can not withstand the load of 10000 people at one time and this type of testing is called load testing.
Load Testing is also called Stress Testing.
Performance Testing, Load Testing and Stress testing, all are different names of the same type of testing.
This type of Testing is also Non Functional Testing because we don’t test Functionality of the Application but we test the performance of the application.
Functional Testing | Non Functional Testing |
---|---|
Unit Testing | Performance Testing |
Smoke Testing | Load Testing |
Sanity Testing | Volume Testing |
Integration Testing | Stress Testing |
White box testing | Security Testing |
Black Box testing | Installation Testing |
User Acceptance Testing | Compatibility Testing |
Regression Testing | Migration Testing |
Functional Testing | Non Functional Testing |
---|---|
Functionality of a Software Application is Tested in Functional Testing. | Functionality is not tested but other features like Compatibility, Performance of a Software Application is Tested in Non Functional Testing. |
Functionality Testing can be done in both the ways, Manually and using Automation tools | Non Functional Testing is preferred to do using Tools. |
Functional Testing is done before Non Functional Testing | Non Functional Testing is done after Functional Testing. |
Functional Testing tells us, what the Product does. | Non Functional Testing tells us, How good the Product is. |
We have covered below topics in this session.
Give an example of Functional Testing and Non Functional Testing for an eCommerce Website like (Amazon, Flipkart etc…).
List out the differences between Functional and Non Functional Testing.
Why we can not over ride a Constructor This is a very important question, that,…
What is Arrow Function In the last session, We had discussed about Anonymous Function. Anonymous…
What is Anonymous Function Anonymous Function is a type of function which has no name…
What is Map, Reduce and Filter Map Filter and Reduce are higher order methods for…
9 different ways of declaring or defining a function in Javascript In, one of our…
Loops with Arrays in Javascript In our last session, we had seen, What is Array…